added eventable behavior
reimplemented repeater
added enabled/disabled functionality