Update to message parsing

Significantly revamped message parsing. Should take into account all
possible messages and output the relevant information. Also added a
check to see which pieces a peer has given that they provided a
bitfield.