BUG/CLN: LinePlot uses incorrect xlim when secondary_y=True
`xlim` is not set properly when `secondary_y=True`. This is different issue from #7322.

Also, refactored `secondary_y` to be handled only by `MPLPlot`, because it will be required in future fix to pass multiple axes to `df.plot`, like #7069 (I'm willing to work soon..).

```
df = pd.DataFrame(np.random.randn(5, 5), columns=['A', 'B', 'C', 'D', 'E'])
df.plot(secondary_y=True)
```

![figure_1](https://cloud.githubusercontent.com/assets/1696302/3278423/15d4ba78-f3be-11e3-9d8e-172c9d0b754b.png)

```
df = pd.DataFrame(np.random.randn(5, 5), columns=['A', 'B', 'C', 'D', 'E'])
df.plot(secondary_y=['A', 'B'], subplots=True)
```

![figure_2](https://cloud.githubusercontent.com/assets/1696302/3278424/1b2dae44-f3be-11e3-8b8c-b19f5ae7fef3.png)

@cpcloud 
 @cpcloud ?
 @sinhrks ?
 @jreback Updated and rebased based on #7322 and #7515. 
cc @rosnfeld
 @TomAugspurger 

cc @rosnfeld ok with this?
 Not sure how deep a review I can do as I am just about to head out abroad again (more or less offline until August), but this does seem to behave properly in various ad-hoc tests, and seems to clean up a few things that surprised me when I first started looking at plotting code. A somewhat larger/more dramatic change than I would have expected, but glad to see that larger changes are possible/being done to the somewhat thorny (IMO) plotting code.
 @sinhrks thanks! @rosnfeld thanks for the commentary

if you guys find addtl issues, pls report!
