Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Encapsulate state mutations and add tests #439
Sorry for the giant commit. It's a result of many evenings of work and I'm too tired to split it carefully into multiple independent PRs or even commits.
This PR also fixes a few bugs here and there, adds some checks, adds lots of TODOs.