Updated messageHandler to be a single instance per web server

Updated messageHandler to be a single instance per web server,
Added session manager mock class
Thanks @pbidenko, this now makes a lot of sense! If you are okay with it, I'm recommending the following comment (which is based on yours):

```cs
/// For each of the clients connected to DynamoWebServer, there is a corresponding 
/// session. Whenever a new client connects to DynamoWebServer, a new session is 
/// created; likewise, whenever a client disconnects, its corresponding session is 
/// removed. Each session is represented by a unique identifier.
/// 
/// DynamoWebServer owns an instance of SessionManager. SessionManager internally
/// manages a map between a given session identifier and the corresponding 
/// DynamoViewModel instance. DynamoWebServer makes use the session identifier to 
/// correctly identify the target DynamoViewModel instance to work with for any 
/// incoming message sent from a connected client.
```