fix #437 Adding focused states to the aria:Button.

On all browsers except Firefox, there is no visual indication that an
{@aria:Button {}/} widget is focused.
Close #438
feat #430 Reduce intstruction number in tpl markup

Adding feature for merging text and expression items after template parsing in order to reduce the number of instructions

Close #430
feat #441 history enhancement

Singleton class aria.utils.History provides a cross-browser implementation of HTML5 native history API. With respect to the previous version, this one is more compliant with the standard behaviour:

- the onpopstate class event is not raised after a pushState or replaceState.
- the state property is available on the singleton and it corresponds to window.history.state.
- support for page reload and external navigation is supported also in browsers for which hash-based navigation fallback occurs (with the exception of IE7, for which the previous history is not kept after reloading, but only the current state is available).

However, the new version is backward compatible with the previous one. In order to disable backward compatibility, set aria.utils.History.isBackwardCompatible to false right after loading the class.
Close #441
feat #439 Improve widget test case

Improve the class WidgetTestCase by providing a dedicated test area and a method to create and initialize the widget under test

Close #439
fix #439 Enable Lint on test cases

One of the tests added in #439 is leaking a global. This commit enable linting on all test files and consequently fixes them
refactor Better validation for the configuration beans

The same code was used in several places, the idea is to mutualize it for a better code size and maintenance
fix #430 for CSS libraries

CSS Macro libraries should support $writeArray
Close #442
fix #444 Fix npm start command again

Since the new build changed some path, this commit is needed to fix npm start.
Finally it introduces a test case in node+mocha to make sure that the command keeps working.
It removes the watch feature as it was hogging the cpu.
fix #446 Missing dependency in aria.utils.css.Animations
fix #447 avoiding * in the root map for the aria package itself.
fix #448 The calendar may have some issues depending on the timezone it is used

To avoid the issue, the new dates are created at noon.

For instance, the Brazilia timezone change the daylight saving time at midnight.
In javascript, a date created with new Date(year, month, day) when the calendar change will result to the day before,
and the calendar widget will have repetitive days around this time.

Setting the dates at noon will prevent the day change.
feat #430 revert of the feature

This commit reverts commits 5a0b9dd7fdbf86cff3b96d0040192416b4923029
and 46e0e12e12f9154802f1ffbfd175e24e0b786506 as they are causing
regressions: test test.aria.ext.filesgenerator.GeneratorTest is failing
when not in debug mode.
fix #450 Number controller didn't reference the right configuration error message.

aria.widgets.Widget.INVALID_CONFIGURATION has been moved to aria.core.JsonValidator.INVALID_CONFIGURATION,
after commit b129e79
fix #451 Change test url in jsonp test

We used to target twitter for testing real jsonp requests. Lately twitter API became rate limited and thus failing from time to time.
This changes to jsfiddle echo service.
fix #452 MouseEvent.pageX/Y not supported in Firefox 3.6 (FireDomEvent)

Since e4e3296618f13aa307a7acc4e9a452381f003985, multiple test cases
were failing in Firefox 3.6 due to the bug in the browser where
an error was thrown when trying to override pageX/pageY of a custom
event. This commit adds a workaround for that bug.
fix #454 can not select options in AutoComplete

In b88bc5173c227746af98dc6fab20f58235f8c164, deprecated usage of expandos
was removed from DomElementWrapper, but it was still used in the TPL code
and due to it, options could not be selected in AutoComplete.
fix #455 DatePicker maxValue unselectable

After 4e030c64fa76a13139f9ada0180a89446c8fbd4f, the day specified as
maxValue date in CalendarController config might have been unselectable.
doc Fix link in release notes template
fix #458 error when no skin and no widgets loaded

Due to a bug in the code delivered in 59e9ba72a65c810df7935c5a1a4195365e44d233
(pull request #427), when no skin and no widgets were loaded, JavaScript
errors were thrown due to nullpointer exception.
refactor Two new features have been added in the LayoutTester:

  - The elements positionning are now relative to the root element (default to body)
  - An error margin can be given for more stable tests

Moreover, some vertical alignement tests have been added.

Close #457