Get read input from adam records

Closes #246 and #80

This is somewhat under-tested since it should be easy to direct comparison between the reads read in both methods, but this fails due to one field.  If inferredInsertSize is None then all of the tests pass.
nit: s/project/projection