Cleaning up MaterialManager public interface.

Removed MaterialManager.material_definition property.

Use MaterialManager._execute_material_definition_module() private method
instead.

Explanation: the 'material_definition' property was exactly the sort of thing
that shouldn't be a property: the full execution of a Python file is required
for the property to produce a result. So at the very least this needs to be a
method or function, so that developers don't forget that there's not
insubstantial compute time involved in returning a value. Also there's no
reason for the property to be part of the MaterialManager public interface; the
only things that need to be part of the public interfaces (of all manager
classes) are the verbs that implement some part of the menuing UI.