use backport of OrderedDict if python version < 2.7