improve ZeroVector caching
extend usage of unsafe getters and setters where appropriate
misc edits
more optimised usage of unsafeGet
misc edits
optimised subVector for SingleElementVector