BUG: scatter_matrix problem, ranges of diagonal and off-diagonal plots are different

close #5497

**Short story:**

In [this](https://github.com/pydata/pandas/issues/5497) issue I signaled that the x_lim and y_lim in scatter_matrix plots are different. In particular x/y_lim of diagonal hists and x/y_lim of scatter plots are different.  

For instance, this causes peaks nonalignments in the 1-margin and 2-margin of the plotted multivariate pdf. See pictures in the issue.

This is a possible fix.


**Long Story:**
In a `scatter_matrix` plot we have a diagonal constituted by histograms and `scatter_plots` to show correlation among variables in the subplots away from the diagonal.

Let's consider this scatter matrix in which we have two variables `A` and `misfit`
![pict](https://f.cloud.github.com/assets/2300692/1522061/389753b0-4ba1-11e3-97f0-31caab31fcb7.png)

The ranges of `A` and of `misfit` are shown by the axis thicks along the boundary subplots (i.e. plots in the first row and column (starting form the bottom left corner)).

As we can see there is a clear misalignment of the peak among plot 1,2 and plot 2,2. 
This is due to the fact that the plot range for each plot (`xlim`) is determined automatically by matplotlib, hence there is a possible disagreement among different plots. 

In this pull request, the `xlim`s and `ylim`s are forced to be consistent and are calculated as the real ranges of the variables (max - min) plus a given correction (here 5%).  

i.e., for each plot

       rdelta_ext = (rmax_ - rmin_)*xy_range_extension  # xy_range_extension defaults 5%
       ax.set_xlim( (rmin_ - rdelta_ext , rmax_+ rdelta_ext)  )


This is an example of a `scatter_matrix` obtained with the correction (please compare e.g subplots 1,2 and 2,2 )

![pe_model_radial_const_force](https://f.cloud.github.com/assets/2300692/1782665/5a1afe04-68b3-11e3-89df-51f3884eff91.png)