Added explicit typecasts between Point< T, N > and Vector< T, N > and vice-versa
Preprocessor macros are no longer nested because of how they behave when compiling with G++