Fake names from the (currently down! yay!) Census names frequency data
Frames, IE10, and Session

Frames are now map[string]interface{} (aliased as type hash), but are now
only parsed by the JSON unmarshaler once.
IE10 sends a pong instead of a ping, so ClientHandler now handles the error
that results from this.  The websocket library probably shouldn't consider
this erroneous, given that the RFC states unsolicited pongs represent a
heartbeat; nevertheless, we get to use it to our advantage.  The other
workaround is to send explicit ping frames (not control frames, but message
frames) on a timer shorter than IE10's deadline.
Session handling now accounts for cases where the client doesn't process
the updated session keys before it closes the connection by requiring the
client to acknowledge the keys are updated before proceeding with the session.