better procedural decomposition.
Throw exception if data is not multiple of sample type size
Handle exception
Add assignment.
Add assignment.
Add exception for invalid sub chunk.
Move code to .cpp
Add exception for invalid file format.