Allow reordering of subfields in html output.

Also change internal representation of marc json from interleaved
array of subfield label / subfield value to an array of tuples
to allow easier sorting.
Store subfields as objects instead of arrays.
Add mutation and conversion methods.

Also change return values to be compatible with
angularjs's dirty checking.
Merge pull request #2 from rych/reordering

Reordering