Added compile_to method that with single .compile() can produce multiple target files.

This is my take on issues/568.
What do you think?
Done for target_fns. args is being modified by the method, so left it alone.