Improved execution speed of first 20 problems. Each of which now take less than a second to run. Also extracted some functionality into new helper classes.