Feature/toParam and Union final

Previous PR https://github.com/hiddentao/squel/pull/96.

Hopefully this is the final PR for this feature set.  This PR obsoletes all the previous PRs I have submitted, so they can all be closed once this is accepted.

Features:
> Union support
> toParam support for nested queries and numbered parameters
  - Union
  - AbstractTableBlock
  - JoinBlock ON condition 
  - Expressions and Where clauses

BugFixes:
> Fixes to the unit tests so that the squel object is reset before each test, in particular when running the flavour specific tests

This PR has grown organically and each bit relies on the previously added bits. I have tried to organise the commit history such that it makes logical sense and extends and improves upon the previous commit.  Sorry it has take a while to get to the final version, it is my first attempt to extend another github project and I wanted to make sure I provided a clean commit history.