Support allowed liberal tag names in classes

Currently liberal tag names are only fully supported in hashes. Classes only support "?" and "!".

This pull request adds support for all Parser::ALLOWED_CONTENT to ruby classes except for "/", which is reserved for partials.

- [x] Rebase
- [x] Squash commits