PCA: Create a function to project new data to PCA output

Pivotal: 49430497

PCA function outputs the principal components of a data matrix.
This commit adds a projection function to project the same (or new)
data to the subspace spanned by the principal components.