TST: restructure sql tests

- add some explanation of structure of tests
- general clean-up (some pep8, docstrings, etc)
- move some methods to _TestSQLAlchemy
- use standard quoting for sqlite
to_csv headers kwarg now works regardless of index flag
Add release note
Merge pull request #6916 from marcua/to-csv-headers

to_csv `headers` kwarg now works regardless of `index` kwarg
ENH: Implement Panel.pct_change

Had to change the implementation in generic.pct_change
to not pass `periods` as a keyword arg to generic.
Once the signitures of DataFrame.shift() and Panel.shift()
are aligned, this change can be reverted.
Merge pull request #6909 from TomAugspurger/panel_shift

ENH: Implement Panel pct_change
ENH: Add an 'escape' keyword to DataFrame.to_latex (GH6472)

     The new keyword prevents the conversion from escaping column names
Merge pull request #6912 from jorisvandenbossche/sql-tests

TST: restructure sql tests
DOC: Add recipe for shifting groups of values based on the index
Merge pull request #6917 from unutbu/cookbook-apply-shift

DOC: Add recipe for shifting groups of values based on the index
DOC: minor correction in cookbook.rst
Add how kwarg to rolling_* functions [fix #6297]
API: remove the copy kw from .xs to prevent accidental / confusing setting (GH6894)
BUG: legend behaves inconsistently when plotting to the same axes repeatedly
Merge pull request #6919 from jreback/xs_copy

API: remove the copy kw from .xs to prevent an expectation of a view (which may not be possible)
Merge pull request #6845 from jsexauer/fix6297_pr

BUG/ENH: Add how kwarg to rolling_* functions [fix #6297]
Merge pull request #6678 from sinhrks/legend_pr

BUG: legend behaves inconsistently when plotting to the same axes
API: Stop modifying SQL column and names, and warn when pertinent.
BUG/INT: Internal tests for patching __finalize__ / bug in merge not finalizing (GH 6923)
Merge pull request #6924 from jreback/finalize

BUG/INT: Internal tests for patching __finalize__ / bug in merge not finalizing (GH6923)