Some cleanup

- prevent potential deoptimizations by renaming fiels from `arguments` to `args`
- guard against clipping empty canvas paths (which triggers a console warning in FF)
- preliminary steps for restoring bitmap and gradient fills