[#1825] NPE is thrown when initializing some exception classes in precompiled mode

We deploy our app to production in precompiled mode without including the source files.
This works nicely until some specific exceptions are thrown that try to access non-existent source files (eg. MailException).

The outcome is that we get NPE instead, which occurs in the constructor of MailException and therefore the original cause is lost.

There are several more exceptions like this. In the past I have already fixed CacheException, which made it to Play 1.2.7. Now we need to fix the rest.

The fix introduces base class for all exceptions trying to access Java source files - PlayExceptionWithJavaSource that fixes this issue for all exceptions that now extend it.