Major improvements
- get rid of setters