Added nested error handling for cases resulting in unhelpful stack traces
fix for failing test (and failing javascript)
There are cases where a resource is not found and therefore calls to aproto.getDiskPath fail with an error of Cannot call getDiskPath on null (because this.cr is null)
 This results from the code above (lines 40 - 47):

    this.cr = null;
    if(searchPaths && !this.isPassthrough) {
      try {
        this.cr = contentResolver(this.pathPart, this.name, this.ext, this.type);
      } catch (e) {
        this.isPassthrough = true;
      }
    }

It's possible for an Asset to come through here fail the try, getting isPassthrough set to true. getRelativePath and getRequestPath both account for this possibility, but getDiskPath does not.

When the error occurs not only does it produce the Cannot call getDiskPath, but further on this stack, there is a stat() call (probably on the fs module) that produces an ENOENT and can cause javascript to fail to fire. (In our case it resulted in locales.feature being lost, and the app crashing).

This does not implement a fix, however it does make sure a message is logged that will help debs realize what is happening and be able to supply the missing asset
Merge pull request #47 from jmo7/getDiskPathFix

Get disk path fix