Remodelling mjscore.

TODO: I'm going to write a customized search function to search for all possible hand compositions so yaku checkers like check_honitu(), check_pinfu(), etc can use it. the search function can also be used in post-validations and fan/fu calculating functions.