BUG: Passing column list as 'set' with frame_table with multi index causes crash
I hesitate to call this a real bug. I think this is a fault of Python having different syntaxes for set and list add operations, but perhaps people should be aware of this (I was blindsided).

Basically Pandas is appending the row MultiIndex as columns to the columns that we pass. If the columns happen to be a set we get this error (but only for MultiIndexes). 

I wonder if a test for set/list would slow things down too much?

```
import pandas as pd, numpy

r = numpy.empty((4,3))
index = pd.MultiIndex.from_tuples([['A','a'],['A','b'],['B','a'],['B','b']],names=['lev1','lev2'])
df = pd.DataFrame(r,columns=['a','b','c'])
df_m = pd.DataFrame(r,index=index,columns=['a','b','c'])

store = pd.HDFStore('settest.h5')
store.put('data',df,table=True,data_columns=True)
store.put('datam',df_m,table=True,data_columns=True)

print store.select('data',where='a<2',columns=set(['a','b'])) #OK
print store.select('datam',where='a<2',columns=set(['a','b'])) #AttributeError: 'set' object has no attribute 'insert'
#Pandas is appending the indexes as columns. I wonder if a test would slow things down.
#The real issue is perhaps Python itself having different syntax for sets and lists
```
