Fix memory management

- Change delegates to assign since weak was causing retain cycles
- Use self for property access where possible
- Remove unused custom property getters