Default throttle

This PR got messy because i decided to split up the helper file. It had many classes in it and it is now sundered so that each class has its own file.