Encapsulate routers - Invert Router-Graph ownership

This PR try to adresse the remaining issues raised in #1520. This contains:

* Remove the GraphService interface, move GraphServiceImpl to GraphService (package location to confirm).
* The GraphService now returns "Routers", not "Graphs".
* There is no longer any Router embedded in a Graph. Ownership is on Router (owner being GraphService).
* The Router startup / shutdown is now unified and controlled by a Router.LifecycleManager. Those functionalities used to be split between various GraphSource implementation (real-time updaters startup / shutdown) and OTPServer (service binding).

The changes could allow to dynamically configure router services based on "preferences" (ie for now Graph.properties). The router startup / shutdown is also more centralized.