New function in DataFrame: to_series
here is a function that I have found useful: convert a dataframe to a series by raveling
(analagous to to_frame from a panel to a frame)

```
def to_series(self, concentate_labels = None):
        """
        Transform a frame via ravelling it

        Parameters
        ----------
        concentate_labels if not None provides a string to concentate the index/column labels
           for each entry

        Returns
        -------
        y : Series
        """

        N, K = self.shape

        # use this as the concentation character
        if concentate_labels is not None:
            index = []
            for l in self.index:
                index.extend([ "%s%s%s" % (l,concentate_labels,c) for c in self.columns ])
            index = Index(index)

        else:
             index = Index(np.array(self.index).repeat(K))

        return Series(self.values.ravel(), index=index)
```

example:

```
import numpy as np
import pandas as pd

In [4]: df = pd.DataFrame(np.random.randn(3,5), columns = ['A','B','C','D','E'])

In [5]: df
Out[5]: 
          A         B         C         D         E
0 -0.197072  0.120001 -2.164021  1.179995 -0.590823
1 -1.047157 -0.683838 -0.244762  1.068976 -0.257587
2  0.049067 -0.896830  0.689987  0.970743 -0.334476

In [6]: df.to_series()
Out[6]: 
0   -0.197072
0    0.120001
0   -2.164021
0    1.179995
0   -0.590823
1   -1.047157
1   -0.683838
1   -0.244762
1    1.068976
1   -0.257587
2    0.049067
2   -0.896830
2    0.689987
2    0.970743
2   -0.334476

In [7]: df.to_series(concentate_labels = '_')
Out[7]: 
0_A   -0.197072
0_B    0.120001
0_C   -2.164021
0_D    1.179995
0_E   -0.590823
1_A   -1.047157
1_B   -0.683838
1_C   -0.244762
1_D    1.068976
1_E   -0.257587
2_A    0.049067
2_B   -0.896830
2_C    0.689987
2_D    0.970743
2_E   -0.334476

```
