Added custom annotation property to it, simplified bootstrapping by have default application contexts to use and enforced the requirement that CustomAppContext extend the default ones