frame values access is slow with large frames with different dtypes
In addtion, there is a memory leak. Repeatedly `eval`ing `big.values` eats up the amount of RAM taken up by the array.

``` python
from pandas import DataFrame, concat
from numpy.random import randint, randn
from string import ascii_letters as letters
ncols = 16
nrows = 1e7
letters = list(letters)
df = DataFrame(randn(nrows, ncols), columns=letters[:ncols])
col = DataFrame(randint(1, size=nrows), columns=[letters[ncols]])
big = concat([df, col], axis=1)
big.values  # very slow and leaky
```
