What classes of objects does Magma support?

Does Magma save class variables or class-instance variables?

No. Those are variables persisted in your image and are ignored by Magma.

When persisting an object, what is the situation regarding persistency of the Dependent object?

The default behavior of Magma is to persist the directly connected graph. With the standard dependency mechanism, dependents are not directly connected, so they will not be persisted.

How does Magma interact with the classes in my image? What happens if I try to retrieve an instance of a class that I don't have defined in my image? Will it compile the class dynamically?

Yes.

How do I protect my database from unauthorized access?

This is a complex question to which most implementors have or want a different solution. I believe, at the end of the day, the end-to-end argument cannot be refuted, therefore it is worth considering to put objects whose privacy needs protecting into a vault.

If I use Magma as a backend for Commanche, what kind of throughput can I expect?

It's hard to say because it depends so much on how its used. Here are some benchmarks from my computer. Magma tester comes with a benchmarking class so you can measure performance of various things to help determine suitability for a purpose.