Extended Buffer and added BufferIterator template
* Buffer template will be used as a container instead of a primitive scope guard
* Access to memory will be abstracted through BufferIterator or Buffer operators
* Buffer template is not specialized on a size as one may want to map diffently sized tuples on a single buffer
* Buffer template size specialization is achieved through template methods
* Library doesn't build at the moment as the buffer changes are not carried through into all templates using the Buffer
Modified existing templates to match the recent Buffer changes
* Buffer is now passed between objects by pointer instead of by reference
* These changes only restore all previous functionality, further changes will be needed to clean up the template internal implementations
Simplified Container template and cleaned up tests
* Container template now doesn't require a internal SlidingTuple
* Tests now don't rely on fumbling around with template internal members anymore
Deprecated SlidingTuple, replaced functionality with BufferIterator
* Tuple template now has an additional constructor which calls the functor of a BufferIterator reference to get the pointer to the buffer pointer
* SlidingTuple template was deleted, a Tuple instance has no sliding capability of its own, needs BufferIterator
* Test cases were changed accordingly
* Iterator template instantiates an internal BufferIterator instead of a SlidingTuple
Changed BufferIterator functor to const
* It is now guaranteed that the users of a pointer to the buffer pointer provided by a BufferIterator are not changing the BufferIterator's internal buffer pointer through that pointer
Added Buffer and BufferIterator test cases
* renamed uint8_t* returning Buffer::begin() overload into front() to match common container naming conventions
Expanded BufferIterator usage in the Iterator template
* Iterator doesn't need an internal index variable anymore, uses BufferIterator operators
* Added comparison operators to BufferIterator
* Iterator template instances can now be used in range-based for loops