Refactors the tracker to expose an interface and an implementation type. Decoupling these will let us inject new state/functionality transparently to the client function.
Reviewed-on: #3
This revives the standalone repo for these tools now that we're liberated from the Geth fork.
* pulls changes from geth fork
* remove unused: StartPath, SubtrieIteratorFactory
* changes module name to reflect bundled `tracker`
* refactors fixture data into separate module
Reviewed-on: #1