Refactored framing classes to use class methods

Refactored SessionID and SeqNum to use class methods. This reduces
the initialization code and makes it easier to understand what is
happening
Refactored buffer code

Improved buffer code so that the buffer can be started at an
arbitrary sequence number and handled an edge case that was not
initially apparent. Basically, the acceptable window was not being
properly set
Merge pull request #33 from ben-jones/frame-refactor

Frame refactor