Add support for Asynchronous Module Definition (AMD) API

See http://requirejs.org/docs/whyamd.html
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
Minimal indenting for expressions and arrays

Closes #281
Allow newline preservation for function declarations
Tests for newline preservation at close of expression

Closes #239
Tweaks to recent commits
Python parity for features
Typo fix

Another good catch by @Infocatcher
Merge pull request #286 from bitwiseman/minimal-indent

Minimal indenting
Simple performance test for node js-beautify
Drop the HTML header cruft