@abstractmethod<EOL><INDENT>def create_subject(self, authc_token=None, account_id=None, existing_subject=None, subject_context=None):<DEDENT>
pass<EOL>
Creates a Subject instance that reflects the specified contextual data.

The context can be anything needed by this SecurityManager to
construct a Subject instance.  Most Yosai end-users will never call
this method -- it exists primarily for framework development and to
support any underlying custom SubjectFactory implementations
that may be used by the SecurityManager.

Usage
----------
After calling this method, the returned instance is *not* bound to the
application for further use.  Callers are expected to know that
Subject instances have local scope only and any other further use
beyond the calling method must be managed explicitly.

:param context: any data needed to direct how the Subject should be
                constructed
:returns: the Subject instance that reflects the specified
          initialization data