Code cleanup and updating README.md

README.md:

Updating README.md.

scmc.cabal:

Add flags for ghc and use the prefered way for declaring extensions.
Add version restriction to dependancies according to cabal usuals policy.
Purely cosmetic add fields in scmc.cabal filei and move version of cabal to >= 1.15.

Cleaning/Refactoring:

Remove unused imports.
Remove useless `$`.
Remove trailling spaces.
Use `_` instead of a useless named variable.
Rewrite some expressions with liftM.
Rewrite some expressions with fromMaybe.
Rewrite some function to partially curryed form.
Use literals patterns for some cases.