Remove default value from abstract class
nits
More nits
Shift UTF8 decoding in buffer
Move buffer into its own private library so it can be tested.
Move MessageBuffer to buffer library, create test