API: SQL class definitions renaming

- renaming of PandasSQLAlchemy to SQLDatabase and PandasSQLTable to SQLTable
- renaming of SQLDatabase.read_sql to read_query (to be consistent with read_query/read_table)
- legacy -> fallback
BUG: fix Index.reindex to preserve name when target is list/ndarray

CLN: drop copy_if_needed kwarg of Index.reindex, it's True everywhere

TST: enable back empty loc/ix tests that failed before

DOC: Bump Index.reindex docstring
Merge pull request #8460 from immerrr/preserve-index-names-when-reindexing

BUG: fix Index.reindex to preserve name when target is list/ndarray
WIP: searchsorted implementation
TST: complex ops test correction
Merge pull request #7447 from cpcloud/pd-searchsorted

WIP: searchsorted implementation
Closes #6852. Dataframe memory usage methods implemented.
Merge pull request #7619 from asobrien/df-mem-info

ENH: dataframe memory usage
BUG: fix Index.reindex to preserve type when target is empty list/ndarray

TST: check index/columns types when doing empty loc/ix tests

CLN: don't _ensure_index in NDFrame._reindex_axes, it is done in
     Index.reindex
SQL/ERR: raise error when insert failed with sqlite fallback (GH8341)
Merge pull request #8462 from immerrr/preserve-index-type-when-reindexing-to-empty

BUG: fix Index.reindex to preserve type when target is empty list/ndarray
COMPAT: disallow Timedelta invalid ops
DOC: v0.15.0 / faq.rst updates
Disallow Series indexing by DataFrame
TST: dtype fixes on tests wrt GH8432
Merge pull request #8472 from rockg/series-indexing

Disallow Series indexing by DataFrame
Merge pull request #8470 from jorisvandenbossche/sql-8314-time

SQL/ERR: raise error when insert failed with sqlite fallback (GH8341)
Merge pull request #8440 from jorisvandenbossche/sql-ooapi-naming

API: SQL class definitions renaming
DOC: fix minor formatting issues
TEST: add for sqlite fallback raising on datetime.time (and not failing silently) GH8341