#25236 Added support for shared framework instances.

This feature is enabled by setting `shared: true` in the framework's
info.yml. By default, each app will create instances of all the
frameworks it needs. The paradigm is that of a static library, where
each app will run independent *instances* of all its frameworks for
encapsulation. If one app does crazy manipulation of its frameworks,
this will not affect any other apps since they all run their own
instances.

However, for memory intensive or slow to set up frameworks, it may be
beneficial to have a single shared framework instead. This flag
indicates to the system that a framework is of that kind.

This commit closes #66 from Psyop. Thanks @agibli!