A NoSuchObjectException is thrown if an attempt is made to
invoke a method on an object that no longer exists in the remote virtual
machine.
This class was created to preserve the cause. RemoteException prevents
initCause(Throwable cause) from working and
java.rmi.NoSuchObjectException only has a single arg String constructor.