XD-1120 Standardize Date/Time/TimeZone handling

* Add custom `ISO8601DateFormat` class for Jackson that supports milliseconds
* Configure REST support to serialize dates using ISO8601
* Add class `TimeUtils` to centralize any `DateFormats` or retrieval of `TimeZones`
* Support UTC as much as possible
* Polish the Shell and the Admin UI
* Add `moment.js` so that ISO8601 dates can be properly handled in the Admin UI
* Add AngularJS directive to centralize the rendering of *durations*
* Fix several tests

Jira: https://jira.spring.io/browse/XD-1120
The reason for the NPE in `doStopJobExecution(org.springframework.xd.shell.command.JobCommandTests)`
comes from here: 

```
final String startTimeAsString = this.configuration.getLocalTime(jobExecutionInfoResource.getJobExecution().getStartTime());
```
The JobExecution startTime can be null.