Major refactor, simplified logic

Removed some redundant helpers joining them together
as separation did not make much sense, but did
blur. also, naming of them was a bit misleading.