Hoist let-bound literals upwards.
Merge pull request #49 from pjonsson/sics-hoisting

Hoist let-bound literals upwards.
Replacing `isLiteral` with the existing `viewLiteral`
Tutorial style
Fixed bug in aeb88d2

Very strange that GHC 7.4 missed this type error...