Parse ServerHello messages

This is based off of #27, and has stuff about ServerHello. We still need to figure out what to do about the Extensions in #27 and then apply the same here for ServerHello. Other than that one thing, this seems complete.
It seems you can do the same thing you did at the construct level and just merge these two classes into "ProtocolVersion" which is used to represent both client and server versions.