Allow rsp compiler to receive a file name mapper function to change destination location of compiled files

This eases source files layout when merging client and server code in the same project. It's not absolutely necessary, but kind of syntactic sugar.

There are 5 commits but only the last, modifying build.dart file, should be considered :-(. I have to get more used to github.