Finished a version with event reasoning, didn't even really have a chance to test it before realizing there is at least one more missing feature needed for my current project, namely predicates with an arity of greater than 2. Added that as a feature to the block language and the reasoner on Monday. Added it to the API for the reasoner yesterday. Today I need to implement it in the "Scenario Editor" which allows users to describe facts, run queries against those facts, and display the results. Absolutely dreading it. Wish me luck.