Sync with numpy's feature: partition

First version of partition method, waiting to verify its correctness.
Because in numpy definition, axis = 0 means sort by column, axis = 1 sort by row, which is in the opposite way of the meaning of axis on tiling.