Modify Rectangle.intersectWith to work with extents across the IDL.
Modify Rectangle.intersectWith to return undefined if there is no intersection and Rectangle.contains to work across the IDL.
Modify Rectangle.subsample to work across the IDL.
Add Rectangle width and height properties to compute the width correctly for rectangles crossing the IDL. Replace all instances of east - west because it assumes east > west.
Fix Rectangle contains function. Math.negativePiToPi can introduce some error.
Merge branch 'master' into extent
Add doc and tests to compute width and height functions.
Update CHANGES.md
Tweak CHANGES.md
Fix ImageryLayer test.
Deprecate Rectangle.intersectWith and Rectangle.isEmpty.
Tweak CHANGES.md
Merge pull request #2313 from AnalyticalGraphicsInc/extent

Fixed imagery providers whose rectangle crosses the IDL.
Entity ease of use

To simplify code for constant values (and to make it easier for beginners
to learn), DataSource properties were modified to take raw values as input
(and turn them into a corresponding property instance).  For example,

```
var foo = new PolygonGraphics
foo.positions = new ConstantProperty([...]);
foo.material = new ConstantProperty('./src.png');
foo.extrudedHeight = new ConstantProperty(10000);
```

becomes

```
var foo = new PolygonGraphics
foo.positions = [...];
foo.material = './src.png';
foo.extrudedHeight = 10000;
```

Reading the property back will return a Property instance in each of
the above cases.  Most values become ConstantProperty instances, materials
because either a `ColorMaterialProperty` or a `ImageMaterialProperty`
depending on type.  Position becomes a `ConstantPositionProperty`.

Also added an options argument to most DataSource graphics objects and
Entity that enables their properties to be set at construction time.

Added a CustomDataSource to easily add entities programmatically.
Also sort requires.

Deprecated id argument to Entity contructor.
Deprecated `ColorMaterialProperty.fromColor`.