Constructs an empty Buffer .
Constructs a Buffer of size size .
Constructs a Buffer that points at buffer , does not assume ownership.
copy constructor
move constructor
copy assignment operator
move assignment operator
destructor.
Creates a Buffer from a DataSource .
Writes a Buffer to a DataTarget .