MultipleVariantReader and MultipleVariantIterator

Enables iteration over multiple input files, returning a vector of Variant objects per genomic location.

The vector is reused per location, so the caller must complete processing before continuing iteration, or make a copy.

Strongly inspired by the example of VariantReader/VariantIterator.  Merging these Readers or Iterators may be appropriate.

This is an alternative solution to Issue #76 
That makes sense to me.  However:

gamgee/multiple_variant_iterator.cpp:68:22: error: cannot increment value of type 'gamgee::VariantIterator'
      (*top_iterator)++;