Refining board, adding unit tests, fixing bugs;