#66 move AbstractBundleResourceHandler to separate subproject for reuse by extensions