Many the more basic parsers more generalized

This is in preparation for parsing variables not surrounded by a delimiter,
like the {{ and }} ones.
Cleanup top level variable parsers
Add tests for non-delimiter variables
Add parsers for variables without delimiters
Combine all three parsers into variableParser

The will replace identityParser, objectParser, and listParser to make things
a bit more cleaner in the long run
Switch out other parsers for variableParser
Change tests to variable function
Remove tests that no long return Left
Change renderTemplate to use variableParser
Remove the unused parsers
Merge branch 'change/parsers' into expression/if
Add tests for objects and lists in if statement
Change ConditionTok handling in mergeMap

This will parse the variable inside the conditional statement of the if and
try to pull the variable out of its HashMap. If there is no such element, it
returns False.
Change base library restriction

This for new Haskell Platform release that uses base 4.6, which is more than
the == 4.5.* restriction.
Merge branch 'cabal/dependencies'

For branch expression/if
Merge branch 'expression/if'

Still needs work, but added different types of token parsing inside the
condition; not just it being a IdentityTok.