Finish regionate, add unit tests