Camera2: Invoke onError callbacks for failure to open

When the initial attempt to connect to the remote camera device fails,
fire the onError callback as documented, instead of throwing an
exception from open().

Also ensure the correct exception is sent when methods are called
while in the error state, and make sure onClosed() is called correctly
if closing the device after an initial startup error.

Bug: 14413756
Bug: 14413363
Change-Id: I0822261dad52bcd428a0c4556202f00032499990
2 files changed