Add support for Asynchronous Module Definition (AMD) API

See http://requirejs.org/docs/whyamd.html
e4x handle inline expressions in tagname or property value of e4x inline xml
e4x CDATA support
e4x single quotes in e4x xml literals
e4x quote in xml literal: more tests
Simplify conditional comment formatting

We now treat tags between if-endif conditionals as comments.
This is not ideal, but is significantly better than it was.

Closes #91
E4X python tests and implementation of xml literal inline expressions, CDATA, and quotes (+ improved tests in JavaScript)
Merge pull request #279 from DBCDK/e4x-inline-expression

E4X xml-literal small fixes
Update command-line flags in README
Fix --disable-preserve-newlines not working in python
Beautify Html word wrapping from web page
Preserve newlines option in html beautifier

Closes #280
Deprecate html beautifier max_char
Minor fixes based on feedback from @Infocatcher
Added (still disabled) tests for #256
Unformatted at the start of a new line should not add extra space

Fixes #285
Merge pull request #274 from sapienlab/master

Add support for Asynchronous Module Definition (AMD) API
Support preserve newlines after start and end tags
Do not indent html element content

Most formatters I've seen flatten the html tag since it is always present
Apply html beautifier to index.html

Indent 4 spaces
Preserve 5 newlines
Collapse braces
Line wrap at 160 characters
Space before conditional