Bundler merge

This merges the explicit and the base bundler into one class, as there is no requirement to have the logic separated. The original work was done in #15 but the PR got to large. This PR is a chery pick of those commits related to merging the base and explicit bundler