Be defensive about hash key style

buildpack_contoller_spec.rb uses string keys but buildpack_installer.rb symbolizes keys, it is not clear which is correct
Positioner no longer know about Buildpack.db
Split responsibilities of calculating position and shifting

In an attempt to marginally improve clarity. They are not unit tested as they are, and are instead exercised via buildpack_spec