Some PEP8 white-space cleanup
Simplified tox.ini
Added invocation tests for each type of callable
Predicate call context (WIP)
Stack predicate invocation contexts for reentrancy
`test()` is the proper way to invoke a predicate
Simplified invocation context API
Removed redundant import
Opened up `test_rule` to accept varargs
Test that context is None outside a `test` invocation
Pass every given argument if the underlying callable is variadic

This is backwards-incompatible