don't use Zangetsu framework api as this class is supposed to be independent
make sure to use __typeof and do the weak strong dance