hide module merging code from runtime objects

this will simply future splitting of core into smaller modules