Enforce user defined maximum payload limit

- Limit can be set as WebSocketCommonProtocol.max_msglen
  attribute
- read_frame()/read_data_frame()/read_message() now
  accept an optional parameter maxsize
- New exception PayloadTooLarge