Fixed IndividualFieldIterators so that operator= works
Update htslib submodule path
TestUtils: add copy/move operation test functions

Testing move and copy operations are something we do all the time and
it's not always trivial. It includes a lot of boiler plate code. These
two template functions take away the boiler plate and test the following
aspects of the copy and move operations:

* copy and move construction
* copy and move assignment
* check that self assignment doesn't destroy the object

The copy version returns all three copies made to test the functionality.

The move version returns the final moved to object. Note that the move
function will move from the parameter passed in, so that parameter
becomes unusable.

fixes #206
Merge pull request #216 from broadinstitute/db_iterator_patch

Fixed IndividualFieldIterator assignment operator
Merge pull request #213 from broadinstitute/mc_generic_test_utils_206

TestUtils: add copy/move operation test functions
Merge pull request #219 from nsubtil/fix-submodule-path

Update htslib submodule path
Update VariantReader/Iterator move tests to use check_move_constructor
Update SingleSamReader move constructor/assignment test to use check_move_constructor
- Add SamIterator check_move_constructor test
Add IndexedSamIterator check_move_constructor test
Remove raw pointers from Fastq Reader and Iterator
- Removed redundant m_file_stream from FastqReader
- add explicit to single-param constructors
- fix copy/move constructors/assignment
- add move tests
Made temporary iterators into unique_ptrs for IndexedSamIterator and IndexedVariantIterator
Includes for Travis
Pass by ref
Merge pull request #220 from broadinstitute/jt_raw_pointer_removal

Remove the remaining raw pointers