The Big Refactor

This PR

- is a follow up on the Watch service cleanup
- removes the need to restart the service on new subscriptions (it's automated now)
- significantly adds to the suite of unit/functional tests
- adds a (real) integration test suite

It also adds an [INTERNALS.md](https://github.com/HouseTrip/routemaster/pull/1/files?short_path=3fc7c0a#diff-3fc7c0a13cddc8a91969a6c4da159e7d) document, intended as an entry point for contributors. I suggest starting reading the PR there.
I'd be inclined to agree with @sdorunga1 because `10e-3` needs mentally decoding, 0.01 is more obviously a fraction of a second.