This paper proposes a general approach to stochastic mortality modelling, where the logit transforms of annual survival probabilities in different age groups are modelled by linear combinations of user-specified basis functions. The flexible construction allows for an easy incorporation of populationspecific characteristics and user preferences into the model. Moreover, the structure enables the assignment of tangible demographic interpretations to the risk factors of the model. Survivor numbers are assumed to be binomially distributed, and, under very general assumptions, the resulting log-likelihood function in model calibration is shown to be strictly concave. This facilitates the use of convex optimization tools, and guarantees that the underlying risk factors are well-defined. We fit two versions of the model into Finnish adult (18-100 years) population and mortality data, and present simulations for the future development of Finnish life spans.