Changed window resizes so that the actual Control.setRect() functions appended to an array of requests that the resize() function set all at once instead of having each done individually. This will be necessary for what I think will be a solution to the deadlocks. It doesn't work right now; I'm assuming it's allocating too much memory. I know how to fix this, but I'm committing what I have so far to be safe.
Er oh the crash was because I was still using the lock-friendly code. Will still apply the change to memory allocation because memory reuse.
Changed the new resizing code so that it uses the same allocated slice per window instead of making a new one to store all the resize requests each time.
Update on my locking problem in the README.