1.1.1, closes #2 using delegate instead of subclass alone, supports bird's eye view with new init hooks