wip snapshot:

 * implement solver's low-level API
 * prepare grounds for plan inheritance