I'm not sure about the use of asserts. It's like watching @dcousens trying to turn JavaScript into a statically typed language. If we were to use them we should consider giving them better messages. Otherwise in case they fail, all the user is going to see is something like `AssertionError: false == true` @kyledrake @abrkn any best practices when it comes to using asserts?