Allow the use of buffers and None in to_hdf and read_hdf.

This patch basically enables the expression

     pd.read_hdf(BytesIO(df.to_hdf(key="/data")), key="/data") == df