Add parser for OGC Filter 1.0 and 1.1 (read/write)

This work is based on the ol.expr package by @tschaub.
It adds a few named expression functions to that package:

 * INTERSECTS, CONTAINS, DWITHIN, WITHIN (no client-side implementation as yet)
 * LIKE (like comparison with wildcard, singleChar and escapeChar)
 * IEQ (case-insensitive equality)
 * INEQ (case-insensitive non-equality)

It also adds a few extra parameters to the existing EXTENT function to be able
to deserialize and serialize all info (i.e. projection and property name).

Some changes were needed for the GML parser as well:

 * createGeometry function needed to be public
 * when parsing Box (GML2) and Envelope (GML3) also parse the srsName
 * fix up writing for Box and Envelope now that bounds is an array

Also added createDocumentFragment function to the XML parser. Implementation
is similar to OpenLayers 2.

Some addtional notes on the implementation:

 * PropertyIsBetween was implemented as an ol.expr.Logical with operator
   ol.expr.LogicalOp.AND and two ol.expr.Comparison instances with operator
   ol.expr.ComparisonOp.GTE and ol.expr.ComparisonOp.LTE
 * In OGC Filter And and Or can contain more than 2 sub filters, so this
   is translated into a hierarchy of ol.expr.Logical
address most of @tschaub's review comments, use dot notation where possible still needs to be done, and I have some questions on the _expression reader still
more dot notation
make filterMap_ static as proposed by @tschaub
implement @tschaub's suggestions for the LIKE function
implement @tschaub's suggestions for ieq and ineq
merge with master - solving conflicts
change _expression reader
trim the string before passing it off to ol.expr.parse
make sure the _expression reader can deal with combined propertyname and literals
remove accidentally committed swap file
Building an expression with constructors instead of ol.expr.parse
Add VALUE_AS_NUMBER property to ol.dom.Input

This should be used when one want to bind a number instead of a string.
Fix bind-input example to use valueAsNumber
Add a temporary html5 externs file

This is needed because the current version of closure compiler we use does not
include externs for valueAsNumber which we now use in ol.dom.Input.
So this backports patch from issue:
https://code.google.com/p/closure-compiler/issues/detail?id=1060

This patch should be reverted when the next closure compiler release is out
with valueAsNumber externs.
Merge pull request #898 from bbinet/input-valueasnumber

Add support for binding input value as number
Add layergroup support
Add layergroup exports
Add tests for ol.layer.LayerGroup
Add tests for layer.getLayerState()