support tests running under python2.6

Tests seem to pass under python2.6 with little modification. Changes
required:

*   use unittest2 module shims
*   use dict() wrap generator instead of dict comprehension ;_;
add tests_require
reformat setup.py a bit
Merge pull request #10 from cactus/python2.6-tests

support tests under python2.6