Multiple Profiles Added.
Uses a modified and memoized form of dispatch.

The update from 3.4.10 to 3.5.0 introduced many new interfaces which
had a catastrophic impact on rendering performance (over 10x slowdown).
I have modified the multimethod dispatch function so that it returns
only specific types -- those in owl.model package, while previously
it would return implementation types. We can now also memoize the
part of the dispatch function that looks up the model Class given
the underlying class of the object on which we are dispatching. The
practical upshot of this is that the number of times isa? is called is
drastically reduced. The resultant implementation is faster for 3.4.10 as well
as for 3.5.0 and should be unaffected by future interface additions.