[RFC] Refactor codebase

cc @mlubin @IainNZ 
I would word this as "Returns the objective value of the best solution found by the solver." There's nothing specific to MIPs about returning suboptimal solutions.