Added Timer class
Faster Advection
Moved uniform updates outside of layer processing loop