Excessive Garbage Collection

Removed use of For-Each loops in methods called each from from most common base classes. Likely still more cases that NEED to be cleaned up. Code not called each frame is not as important for optimization but should likely be updated eventually for consistency.

fixes #335