moved composition stuff into pandas_composition