Allow loading JSON with OrderedDict

Attempts to import OrderedDict from collections (introduced in 2.7),
falling back on a dropin replacement from the package 'ordereddict'. The
latter is added as an extra requirement in setup.py.