Separate out the acquisition function and the logic for getting the next query point. In other words, whether we want to use mean, mean + variance, EI, KG, or UCB etc. should be separated from convex, minimum and best logic. This way the code will be more modular.