Quick fix

My bad, somehow, checking for the .init function was also valid for
child inheritance. I replaced it with a conditional check where, since
having an "init" function is a requirement, consider reopening a class
if such function does not exist. Makes sense though, if you're gonna
extend a class why override init() ? it won't make sense even in the
original implementation, so there. Ideally it should be a flag, but I
tried to wrap my head around the extendingFlag and couldn't figure out
how to make one that would work in this case.