Determines all possible ordering combinations (http://csharppad.com/gist/9272415)