Repeated tags for marc_extractor

Allow an extractor have repeated tags without merging the results. This allows, e.g., `extract_marc('245ab:245abc', :separator=>' ')` to give the expected two-string result with spaces between the subfields, which is impossible with the previous implementation.

```ruby
# Assume 245 = {:a => 'A', :b=>'B', :c=>'C'}
# Before
MarcExtractor.new('245a:245b')  #=> ['A B']
MarcExtractor.new('245ab:245abc', :separator=>' ') #=> ['A B C']

# After
MarcExtractor.new('245a:245b') == ['A', 'B']
MarcExtractor.new('245ab:245abc', :separator=>' ') #=> ['A B', 'A B C']

```