Implemented Router, with spec

This is the first substantial implementation commit