The HTML parser is now far more permissive - even if it still can't parse successfully any input.

- added some standard colors (for easy stylesheet definition)
- changed the HTML stylesheet for easier visual recognition of elements

Made it more permissive and stores errors in nodes (flag them as having errors and set a property with a single error or a list). Also fixed some issues by the way.

Also, some nodes are marked as possible orphans: we should be able to parse them as they are, but outside of the context of the parent they should be in. In practice, rules have not been updated and these nodes can't be real orphans yet.

Fixed:

- directive content definition
- cdata content is now optional
- unquoted attribute values are now better parsed (alpha)

Elements that can be left open:

- inline
- cdata
- block
- strings
- comments
- opening tag of blocks
- closing tag of blocks

Other:

- directive: all the elements except opening delimiter (that's how we determine this is the directive which is in error state) are now optional.
- attribute: attribute to which a value is expected to be assigned - that is where the assignement operator is present - can be left without any value
Improved HTML highlighting.

HTML grammar:

- fixed: unquoted attribute values were not returned as expected as nodes

Stylesheet improvement:

- added standard colors: with HTML colors names (http://en.wikipedia.org/wiki/Web_colors), along with the aliases
- changed the HTML stylesheet for better distinction of different element types

Unparsed text handling:

- highlighting HTML output in Mode now handles unparsed text (the visual result assumes the unparsed text is always at the end, but this is not the case, and anyway you will see all the text, maybe with a very weird highlighting sometimes)
- the Stylesheet class also handles it (even if it is a bad design, see  ariatemplates/editor-backend#6)

Web application:

- removed the big page header, visually cumbersome for nothing
Aligned the grammar with the classical one.
Made the parser still more flexible.

New optional elements:

- ids in closing tags
- nodes, diectives: when some special characters are used to begin the opening of any element (i.e. not text), but then nothing matches any element, this is kept as an unknow, not finished element
Fixed tests regarding the changes in the grammar.
Brought more consistency to the grammar and made important things optional.

- forced closing tags to match the latest opening tag, considering the id
- made it possible to parse alone unmatching closing tags, considered as "orphans"
- made the id of opening tags optional
- removed some useless remaining stuff
Brought validation out to the user.

- the mode can now return data about validation, basically a list of errors
- the web app can display those errors, validation is requested in live edition