Write a task manager Prism

After consulting experts of networking, I realized that we cannot start processes by make our programs call SSH command lines directly, because when ssh-agent loads private keys, it would definitely require users to enter the passphrase used to create the key.

So, I have to resort to another solution -- write our own task manager server.  Shaobo and the network expert suggested this solution indeed.

Prism, the name comes from the game Starcraft II, is an RPC server that can deploy programs using HDFS and can start processes running the deployed programs.  

Prism logs the standard output and error of the launched processes in client specified directories.

Prism is able to restart failed job for at most client-specified times.