ENH: drop function now has errors keyword for non-existing column handling
Closes #5300.

Currently `drop` raises `ValueError` when non-existing label is passed. I think it is useful if `drop` has an option to suppress error and drop existing labels only.

For example, I sometimes process lots of files which has slightly different columns, and want to `drop` if data has unnecessary columns. Previously, I have to prepare different `drop` arguments checking columns existing each data. 

this could be added on after #6599 
@hayd 
 This all looks fine to me - thanks for the patch.

We might want to reduce the number of test cases (just because we don't necessarily need to duplicate), but aside from that, quite good. - somebody else want to take a look too? I may be a bit rusty :P
 Looks all good to me. But let's wait for #6599. :)
 yep....so @hayd will revisit after that #6599 merge
 @sinhrks this idea is ok, can you rebase
 @jreback Yes, rebased.
 have to think about this
 @sinhrks can you rebase this.
 Sure, rebased.
 @sinhrks thanks!
