into(sql, *) with better datetime support

changes and tests to support into(sql, *) where the source is
a pd.DataFrame, numpy array or dynd array, bcolz.ctable

If the source has a datetime with a timezone, make use of
sqlalchemy DateTime with timezone support

This also helps with operations of the form into(*, sql) where
the sql table has datetimes with time zone
simplify into(np.ndarray, Iterable)

exclude into(sql, mongoDB.Collection)
into(ctable, (list, tuple)) takes names kwarg
test for ambiguities
small fixes for into(sql, *)

- typo in Tables exception
- adds into(sql, mongoDB collection)
- only enforce datetime tz when adding to empty SQL db
sparksql: only define functions if pyspark is defined
Merge pull request #622 from mrocklin/test-ambiguities

test for ambiguities
sql: more robust datetime timezone handling
Merge branch 'into_sql'
Style cleanup
Cleanup test_into to use pytest effectively
xfail on csv -> dataframe
Use mkstemp to avoid race conditions
Use the filename not the file object
Use need to pass usecols here
Catch the error and close the file handle first
Close before we start failing
At least close
still remove
Close the file not just the table