BIOGEME is a free software package for estimating by maximum likelihood a broad range of random utility models. It can estimate particularly Multivariate Extreme Value (MEV) models including the logit model, the nested logit model, the cross-nested logit model, and the network MEV model, as well as continuous and discrete mixtures of these models. Biogeme has been designed to provide modelers with tools to investigate a wide variety of discrete choice models without worrying about the estimation algorithm itself. We present some new features and capabilities of Biogeme. To make it more flexible, we allow explicitly the user to specify the random utility model to be estimated and the associated likelihood function. With simple formulations, it will be able to handle more sophisticated models such as latent variable models, latent class models, dynamic models, etc. required by modern modeling practice.