Refactored attribute assignment/retrieval for easier subclass definitions