Added negation (logical not)

"not" is now defined in Init.hs. Parse.hs has also been updated to have ! as an
alias for not. This is very nice in practice.
Added library capabilities

Since Init.hs was really starting to commit heavily to the bloat of the
interpreter, I decided to allow FL libraries. Init.hs will still define basic,
essential functions, but FL libraries will define more abstract functions, such
as foldr.

Currently, you can pass arguments to main.hs specifying libraries you want to
use, and it will read those files before the current one (i.e., `runhaskell
main.hs lib/list.fl`). Libraries should generally be a series of let statements
(and should not evaluate to a value).

TODO: library imports should be done in the .fl file that needs the library,
not when actually compiling the file.

TODO: Change list output to use FL format instead of Haskell format.

TODO: Add documentation for libraries and !

TODO: Extend libraries, move stuff out of Init.hs

TODO: implement project euler answers