Build with GHC 7.0

I added CPP around the use of unsafeDupablePerformIO to get it building on GHC 7.0.  I also added 7.0 to the travis build list and verified that it builds correctly.  This fixes issue #20.