changed namespace to com.zeroclue
use self-types instead of inheritance