Improved the type safety of AttributeRenderer and ModelAdaptor by
converting them to generic interfaces.