When creating a table, all the primary key columns are assumed to be
not-null. Adjust them if incorrect.
Add test for multi-part PKs also work correctly
Remove duplicate columns for JOIN USING

All the logic was apparently there, but we were removing the evidence
that there was ever a using clause, so it didn't happen
Added unit test sql for bindings
Added expected files
Improved a couple tests, and updated expected
Add tests to support ALTER TABLE ADD PRIMARY KEY() to also perform the
implicit change to the columns of the index to all be NOT NULL.
Updated object ids based on actual output
Ignore trailing whitespace in tree diff
updated select-14h aisbinding test to be correct

the expected output was wrong
A couple more tests for join using
Changed runtime exception message to TODO...

Just to make sure I don't miss it later
Added test with USING(X,Y)
Keep track of the table/columns to not bind to

when there is an unqualified column reference (e.g. columnName as
opposed to table.columnName), and there's a using clause, don't
look at the table/column that was rejected by the using clause, i.e.
on t1 join t2 using (x), WHERE x = 1, will not bind consider
binding to t2.x
Added exception type for unsupported FullOuterJoin

It crashed anyways, now we're just explicit
Use right table of inner join

e.g. SELECT * FROM x RIGHT JOIN y USING(c) JOIN z USING(c)
compares y.c with z.c, not x.c with z.c in the second using
Added expected for named SELECT departmentid
Handle USING(x,y)

you can have two using columns, now there's a test and handling
renamed join-using test resources

seemed better than select-14 through select-14m
Updated README with new AISBinder tests