Update for GHC-7.8

I've added more liberal bounds and slightly modified `SetLocale` so that it may work with the latest ghc since it removed some deprecated behavior.