added more validation for args and kwargs passed to the macro_block tag.
added more validation for args and kwargs passed to the macro_block tag. Added lots and lots of tests. Minor bugfixes, etc... Code is now in a well-tested shippable state.