Inheritance Behavior Changes

Template inheritance now works properly when extending templates
that in turn extend other templates.  Additionally, blocks defined
in child templates that do not exist in the top-level template
being extended are no longer added to that template's nodelist,
resulting in them not being displayed.
Bumping version to 0.4.0.