added __buildargs and better __super with documentation