Adding new methods to IParentNode interface

- minimumChildren should return integer denoting the minimum # of children this node supports (or -1 for 0...)
- maximumChildren should return integer denoting the maximum # of children this node supports (or -1 for 0...)
- Adding some logic to check for proper # of children for LogicalJoin nodes
- Adding more test cases for LogicalJoin nodes.
Merge branch 'master' of https://github.com/dcarbone/camel