Aura/UC: Fix losing surface after empty frame.

BUG=307100
R=jbauman@chromium.org

Review URL: https://codereview.chromium.org/27231002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228527 0039d316-1c4b-4281-b951-d872f2087c98
Handle CdmWrapper::Initialize() failure gracefully.

Since CdmWrapper::Initialize() doesn't report error, GenerateKeyRequest() et al
can be called even if Initialize() failed previously.

For MediaKeys calls, we should fire KeyError when they are called without valid
|cdm_|. For Decryptor calls, we should fire the callback with error code.

Also added EncryptedMediaTest.ExternalClearKeyInitializeCDMFail test to cover
this case. Chrome will claim that the ClearKey CDM supports key system
"org.chromium.externalclearkey.fail". But actually ClearKey CDM will return NULL
for this key system in CreateCdmInstance();

BUG=306241,179570
TEST=Unit tests added.

Review URL: https://codereview.chromium.org/27030007

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228528 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 228527
SVN changes up to revision 228528