Making helper fns private class fns
Adding 'eachLimit' and making better use of GCD