Fix custom source with default parser bug

-issue #11

Some refactoring of `Sow::Data::Source`.  I wouldn't get hung up on it, I'm about to refactor and unit test.

`ParserDeterminer.new(source).parser` was the real fix.