More refactor work.

Moved session management out of EME implementation classes.  This involves a lot of
magic in the 0.1b implementation since MediaKeySession objects don't exist yet.  So,
some management of sessions must remain in there.

Created separate EME interfaces for detecting KeySystem support and
selecting KeySystem