ENH/DOC/CLN: Document arguments and reconcile C and Python engines for read_csv
## Known differences between Python & C engines

Update [here](http://pandas.pydata.org/pandas-docs/stable/io.html#specifying-the-parser-engine)
### Features supported in the Python engine only
- [ ] `skipfooter` / `skip_footer` (#13349) - num of lines at the bottom of the file to skip
- [ ] sniffing (`sep=None`) - deduce the `sep` #9645
- [ ] regex `sep` - regular expression/multicharacter seperator
### Features supported in the C engine only
- [x] `dtype` - specify dtype for providing dtype or `{column_name: dtype}` (related as this is a conflicting option: https://github.com/pydata/pandas/issues/5232) (done in #14295)
- [x] `warn_bad_lines` -  issue a warnings for each bad line (#15925)
- [x] `error_bad_lines` - if `False`, drop bad lines instead of raising (#15925)
- [ ] `lineterminator` - specify the line terminating character
- [x] C engine accepts `float` for `nrows` but Python engine raises #10476 (closed by #13275)
- [x] `decimal` option, #12933  (closed by #13189)
- [x] `delim_whitespace` #12958 
- [x] `na_filter` #13321
- [x] `float_precision`, documented [here](https://github.com/pydata/pandas/blob/master/pandas/io/parsers.py#L1526) and [here](https://github.com/pydata/pandas/blob/master/doc/source/io.rst#specifying-method-for-floating-point-conversion), #13377 
  #### In C engine only (but undocumented)
  - [x] `low_memory` (PR #13293)
### marked as internal on C engine only (maybe be a bit louder about this in the internal code)
- [x] `buffer_lines` #13360
### Undocumented arguments to `read_csv`
- [x] `doublequote` #13368
- [x] `compact_ints` #13323
- [x] `use_unsigned` #13323 
- [x]  `as_recarray`  #(#13373)
- [x] `memory_map`, #7477, #13381
### Differences
- [ ] validity of `names` and its length with respect to `usecols` #16469
- [ ] different handling of `na_values` when `converters` is also present. #13302
- [ ] different handling of columns aggregated to create date columns #23845
