Consolidate some SnappyRouter methods

By trusting internal functions to call methods with correctly structured arguments, some duplicated code can be removed. handleHttpRoute and handleCliRoute were consolidated down to invokeHandler, and determineHttpHandler and determineCliHandler consolidated down to determineHandler.

In order to maintain compatibility with unit tests without exposing the private method, the handleHttpRoute method is left in place as a wrapper for invokeHandler.