added ref isTab
update deferring methods - make them constructor methods to avoid need to apply bind method