Just something that came to mind when reading this post:
Lag spike when users enter dungeons
Basically what I mean is for the current primary base classes ( namely Mobile and Item class ), have something such as this..
public virtual AccessLevel AccessToAdd{ get{ return AccessLevel.Administrator } }
and then in the Add command have it read the AccessToAdd prop of the object it's trying to create. This way there can be a dynamic way of changing requirement to add things, and gives administrators more freedom to let their lower-access staff still be of sufficient use, while preventing abuse.