Start for defining the problem context + cost function as a separate
object