Exceptions: move all exceptions to exceptions.h

All gamgee specific exceptions should be declared in exceptions.h and
gamgee.h will extend it's visibility to all users of the library.

fixes #170
FormatFieldType: renamed to VariantFieldType

fixes #171
Note about MVR result vector nondeterminism
Add MVR and IVR to gamgee.h
Add sample subsetting to MultipleVariantReader
- move VariantReader::init_samples() to variant_utils and rename
- refactor variant subset testing
- incomplete due to Issue #209
Add test for MultipleVariantReader GVCF and GBCF
Add a test for input files with different variants
- includes matching and non-matching records
- includes multiple records in a file at the same location
Travis
Add helper functions for shared memory access to HTS files, indexes, and
iterators
Remove raw pointers from all Variant Readers and Iterators
- delete all copy constructors/assignment
- set all move constructors/assignment to default
- remove all nullptr assignments
Add move constructor/assignment tests for remaining Variant Readers and Iterators
Add explicit to constructors which can take a single argument
Refactored VariantReader initialization
IndexedSamReaderTest: move to templated copy/move constructor testing
IntervalTest: add move/copy constructor tests
SamHeaderTest: revamp copy/move constructor tests
VariantHeaderTest: add move/copy constructor tests