Finish pointer implementation and foreach loop
- Some values now support the & operator, the same as "address of" in C++ but called "pointer to" in P*
- Arrays may now be iterated in a foreach loop with the syntax you would expect
- Pointers may be used transparently in foreach loops if you wish to modify values
- Fix test cases