added path groups, made paths respect color, added more vector and
matrix operations