Fix Vector and Matrix array access

The last commit introduced the Vector and Matrix class, but broke compatibility by removing Array access. These commits use Array as the underlying object of Vector and Matrix for backwards compatibility and performance concerns.