Use <erb> instead of <code> when parsing templates

This changes the ERB template parser to use `<erb>` rather than `<code>` to designate code blocks in a template. This is a somewhat large change to functionality, but fixes several important issues which I can't imagine a better way to fix.

For example:

    <%= render template: 'foo/bar' %>

Used to parse as:

    <code erb-loud> render template: 'foo/bar' </code>

But now parses as:

    <erb erb-loud> render template: 'foo/bar' </erb>

This fixes a number of problems that result from using `<code>`:

* There may be `</code>` tags in the original ERB, which would be turned into `%>` (#101)
* Any `<code>` tags in the `<head>` of a document would be moved to the body. Since `<code>` is a real HTML tag, and isn't allowed in the head, it will be moved into the body of the document. This happens in nokogiri under jRuby or libXML 2.9.0 (#84, #100). `<erb>`, being an invented tag, does not have this issue.

Unfortunately, **this breaks any existing deface selectors looking for code**, which are somewhat common. Selectors would need to be updated to cover both code and erb:

    selector: "code:contains('my_method'), erb:contains('my_method')"