mw.ViewPageTarget.init: Reduce Deferred clutter in getTarget()

* mw.loader.using returns a promise already.
* Use .then() instead of manually forwarding failures.
* Cache .promise() result.

Change-Id: I3d0a90051c389c02dd5714020b2a1fb872790a18
mw.ViewPageTarget.init: Log an error if target fails to load

So users aren't left entirely stranded..

Change-Id: I111176b83227b48d50623a4817b9dc7573010338
Merge "mw.ViewPageTarget.init: Reduce Deferred clutter in getTarget()"
Merge "mw.ViewPageTarget.init: Log an error if target fails to load"