BUG: Thoroughly dedup columns in read_csv
When the user specifies `mangle_dupe_cols=False`, the columns should be thoroughly deduped.  However, `master` fails on examples like this:

~~~python
data = "a,a,a.1,a.1.1"
read_csv(StringIO(data))
   a  a.1  a.1.1  a.1.1
0  1    2      3      4
~~~
Note how there are two "a.1.1" columns.  Now, the output of those same commands is this:
~~~python
   a  a.1  a.1.1  a.1.1.1
0  1    2      3        4
~~~