Feature/namespaced logs

Added namespaces in log retrieval APIs.

Changes:
1. Existing ``LogHandler`` moved to ``LogHandlerV2``
2. Implemented ``/v3/namespaces/nsid/.../logs/...`` APIs in ``LogHandler``
3. ``LogHandlerV2`` delegates v2 user log handler methods to ``LogHandler``
4. Removed ``LoggingContext.EntityType`` and instead used ``ProgramType`` for consistency.
5. Removed request parsing logic for query parameters and instead used ``@QueryParam``
6. Added logic in ``RouterPathLookup`` to route ``/v3/namespaces/nsid/.../logs/...`` APIs to metrics service
7. Added unit tests. 

Build - https://builds.cask.co/browse/CDAP-DUT381
So in the service's runtime module, you would have added it as ``bind(classname).inScope(Singleton)``. However, that would bind it only in the RuntimeModule. 

Over here, we need it because an instance of this class is also injected into ``LogHandlerV2``. So this ``@Singleton`` makes sure that we have one instance across all these injections.