PVector initial implementation

Implement some PVector functions, stub out empty method calls for the rest.

One difference from the original method definitions is that most functions return itself, so method chaining is possible. The one exception is PVector.cross, which I didnt feel like it made sense to modify the original. Happy to change if people feel otherwise.

I have ignored the implementations of the form PVector.mult(n, target), where target is the PVector you want to store the result in.

I have updated api-progress to show what is left for PVector. Feedback appreciated!