Add python2.6 compatibility

This change mainly involves an alternative import of OrderedDict, modified dict and set comprehensions, and using unittest2 for testing. 
please remove the "else" here and unindent this following statement (I think we want to do the set union in all cases, although weren't testing `concat_over` here so we didn't have a test to fail)