BUG: Ignore the BOM in UTF8 BOM CSV files
Title is self-explanatory.  Closes #4793.

## [Current coverage](https://codecov.io/gh/pydata/pandas/pull/13885?src=pr) is 85.30% (diff: 80.64%)

> Merging [#13885](https://codecov.io/gh/pydata/pandas/pull/13885?src=pr) into [master](https://codecov.io/gh/pydata/pandas/branch/master?src=pr) will decrease coverage by **<.01%**

``` diff
@@             master     #13885   diff @@
==========================================
  Files           139        139          
  Lines         50108      50138    +30   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
+ Hits          42744      42768    +24   
- Misses         7364       7370     +6   
  Partials          0          0          
```

> Powered by [Codecov](https://codecov.io?src=pr). Last update [2beab41...34bc8e5](https://codecov.io/gh/pydata/pandas/compare/2beab41aa288a98bb2f81e5aca0efa67792d3505...34bc8e5e80f50c4a6d0fe2ede0cee02a41d4f93a?src=pr)
 was just about to merge (testing on macosx / windows). and on mac got this warning (though no error)?

```
\[jreback-~/pandas] nosetests  -A 'not slow and not network' pandas/io/tests/parser/
.......................................................................................................................................................................................S.............S........................................................................................................................................................................................S.............S...S......................................................................................................................................................................./Users/jreback/pandas/pandas/io/parsers.py:2192: UnicodeWarning: Unicode unequal comparison failed to convert both arguments to Unicode - interpreting them as being unequal
  if not first_row[0] or first_row[0][0] != _BOM:
.S.............S..S...............S.............................
----------------------------------------------------------------------
Ran 632 tests in 63.239s
```
 @jreback : It's a Python 2.x thing because you're comparing with a string that cannot be cast to `Unicode`.  I made an explicit check for it that should hopefully get rid of the warning.
 thanks!
 closed by https://github.com/pydata/pandas/commit/e5ee5d2e034c9a4be795596633c199d0ba23970b
