Introduced AbstractResource for when we want a resource without the name
and other information a resource requires.
Test jar now created in core so that extension modules can use base
tests.
Various changes to support triggers.