Manually merged some work across branches, this is the final direction, I will merge this back into master when i get it workoing completely.