some inheritance functionality and other fixes