cleaned up combination function, started the all combination method