Switch over to Java 8.
Converted one of the `Commander` classes used within our spec tests to
use lambda notation to prove that Java 8 support is working.
Tell Travis to use Java 8 JRE.
Early commit of the 'gradle-retrolambda' plug-in so others can inspect
the problem I'm observing when using it.
PCTLIBRARY-935: Adds mechanism to add new view handlers to the view fixture.

ViewFixture.addViewHandler does not allow existing handlers to be
overridden (an INVALID_PARAMETERS error is thrown if this is attempted).
(@ewant)
Provide the infrastructure so that all methods that may involve disk I/O
can be easilly and safely memoized without introducing subtle caching
bugs (see
https://github.com/BladeRunnerJS/brjs/wiki/BRJS-Memoization-Strategy-Strawman).
This code is currently untested because I need to switch tasks for a
bit.
Added some unit tests for the memoization code written previously, and
stopped using `Joiner.on()` when throwing a security exception as this
method caused a futher security query to be made, which ultimately leads
to a stack overflow.
Updating DirectoryDoesNotExistException and InvalidBundlableNodeException to accept string filePath params.
The only place this is used is by the BundleDepsCommand, where I've introduced a relativePath string which I normalise to "/" instead of "\\" so that tests don't have to deal with this (File.separators in tests are nasty)
Added missing @Test annotation and fixed the test so that it throws the intended exception (needed the app to exist first)
Misc: Removing unused import
cc: @dchambers
Changing ko -> presenter_ko for IE8 tests
Updated retrolambda to version 1.1.4, which fixes a bug that was
preventing our code from compiling -- we will still need to update
Travis to set the JAVA7_HOME environment variable before the build will
go green.
Update Travis to provide both Java 7 and Java 8, set the `JAVA7_HOME`
and `JAVA8_HOME` environment variables.
Force re-build on Travis.
temporarilly prevent installation of the BRJSSecurityManager, to see if
that is what is causing Travis to fail.
Re-instated the security manager, but modified so it no longer throws an
exception if the thing we're reading is a class or jar file (used to
dynamically load parts of the program), since not all of the classes
appear to be pre-loaded when we run on Travis.
Prevent compilers warnings due to use of try-with-resources for a use
case where we don't need access to the auto-closable.
Add deprecated annotations to all security manager methods that are also
marked as deprecated in the super class, preventing compiler warnings.
Added some documentation explaining how to install both Java 7 and Java
8 to support our use of retrolambda.
Removed one of the two jdk configuration options since this was causing
Travis to build each commit twice (once for each version of Java),
rather than causing both JDKs to be available, which they are anyway.
Merge branch 'develop' into java8-support
Merge branch 'develop' into enable-widespread-memoization