workon on table relationship metadata
table1**table2<tab> join expansions

Lots of changes here, including changes to sqlite schema.
Need to run a %flush_metadata then %rereflect to rebuild
metadata for a connection.

* foreign keys are reflected and stored in the sqlite dbfields table
* tab completion of joins short-hand syntax feature added:
    $ select t1**t2<tab>
  will produce:
    $ select t1.*, t2.* from t1 inner join t2 on t2.f = t1.f
  If there is a valid join between t1 and t2. This works with any
  number of tables: t1**t2**t3**...tn
Merge branch 'master' into reflect_keys
further work on join tab completion
search order for join tables
Merge branch 'master' into reflect_keys
add utils
Merge branch 'master' of https://github.com/jaysw/ipydb
shush
transactions bug
package renaming
re-write of %what_references [table]
%sql -o FILE: save output to a file. works well with %sqlformat csv
automatically start a transaction when insert/update/deleting data
start workon on running delimited sql scripts
implement %run_sql_script for external sql script files
spaces
name change and completion for %runsql
only when connected
Merge branch 'master' into reflect_keys