Fixes nested components and `<content>` tags.

As identified by #549, this fixes a bug with nested content tags by:

Making sure helpers are passed the same way as scope. Essentially parent helpers were not available. https://github.com/bitovi/canjs/commit/586520c59bed248c96567dcf2f0b02f7ea0189d0#diff-9ede961af024a842ba5e956318112b39R238 This was a bug waiting to be found.

Changing scanner to look all the way to content: https://github.com/bitovi/canjs/commit/586520c59bed248c96567dcf2f0b02f7ea0189d0#diff-08e58b9c9e7b5aea7a452a3e45ca998fR190.  This would previously stop once it found a tags object, I needed it to keep going if it didn't find the actual matching tag.

Then I temporarily remove the tag.content callback while rendering the content.   https://github.com/bitovi/canjs/commit/586520c59bed248c96567dcf2f0b02f7ea0189d0#diff-9ede961af024a842ba5e956318112b39R222 This is the core problem, that if you were rendering a `<content>`s content that had another `<content>` within it, it would keep rendering the parent content.  By deleting it, and changing scanner, scanner will go to the previous parent's content tag callback.