added additional functionality to entities, and refactored link generation accordingly