BUG: Removing a nonexistent store raises a KeyError
BUG: GH3455 Duplicate indexes with getitem will return items in the correct order

BUG: GH3457 to_csv writing duplicate columns incorrectly
Merge pull request #3447 from danielballan/remove-raises-keyerror

BUG: Removing a nonexistent store raises a KeyError (GH3346) - thansk!
Merge pull request #3459 from jreback/GH3455

BUG: GH3455 Duplicate indexes with getitem will return items in the correct order
initial commit of new html module
no need to support bs3

cleanup

refactor some functions and remove useless arguments from user facing API

rename parser to flavor

some commentary
use unicode
provide the correct error message when more than one table is detected

cleanup

clean up and add commentary

we only care if a skiprows object is a container
provide a more useful error message when no matching text is found

flesh out tests

whoops syntax error
add data sets
refactor tests and add more tests

add more index inference code

more interface hacking
use pure lxml

rename and pass parsed rows to frame builder

add some more documentation
passing all tests right now
merge travis deps from read-html
move skiprows to first part of function to follow read_csv API

rename more appropriately
merge setup.py from read-html

conform params to read_csv conventions
add install note about lxml and bs4

testing

clean up commentary
do not export parser classes
more docs and check for empty before checking index saves small amounts of time for possibly many empty rows
remove null check since we are skipping rows and do not care if they are null when that is happending