Updates to data projection module.

Code that wasn't committed, don't really remember what it improves :)
Split controller file into one file per controller.