Fix for issue #140, add vcf_record_sort_key arg

- Added 'vcf_record_sort_key' to allow user to specify arbitrary chromosome ordering.
- Fixed issue #140 by making sure to emit all records from the current chromosome before moving on to the next one. This takes care of the problem in most typical cases (eg. when all files have records for all contigs), but not in some edge cases, in which case the 'vcf_record_sort_key' arg can be used to fully solve the problem by explicitly defining the chromosome order.
Fixed spacing and wrapping in utils.py, removed test for old walk_together arg (eq function), fixed edge case in _AltRecord
Fixed edge case where all inputs are empty, simplified logic
finished fixing edge case where 'other' is None
Test data for testing the fix for issue #140
Added tests for walk_together with more complex inputs