All entities that can be locked implement this interface.  It is used 
 for two purposes:
 
 -  it is a marker interface to determine which entity types are eligible
      to be locked and unlocked. 
 
 -  it exposes the locks held on the current instance of the entity.
 
 
 
 Note that a given entity may be locked by multiple locks of different types
 at the same time, which is why the Locks member returns a collection
 of locks.  While multiple lock types are supported, not every entity that 
 implements the Lockable interface will support all lock types.