Change Session to struct and add simple support for storing generic types in sessions.

This change is partially backwards-incompatible due to Session being changed to struct.

See #427.
Move the REST interface generator from vibe.http.rest to vibe.web.rest. See #427.
Add a simple implementation of registerWebInterface along with an example package. See #427.