Refactorizations - still some to do
Merge