Simplified method overrides & cleaned up internal structure.