allow stroke and fill to use different shaders
force stroke to compile shaders if not cached
allow every object to have a different storke width and default to 0
program is set even while cached
clear old rendering loops
proof
clear canvas when rendering loop stops