Implement Scheduler example

This PR addresses https://issues.apache.org/jira/browse/REEF-3

It is a basic Task Scheduler example using Reef-webserver. The application receives the task (shell command) list from user and execute the tasks in a FIFO order.

* Users can send the HTTP request to the server via URL : `http://{address}:{port}/Reef/v1`

* The command list is sent within the `data` field of HTTP request. The commands are separated by ‘;’ character.

* For example, users can send the request via `curl` command:

	```
curl "http://{address}:{port}/Reef/v1" --data 'echo HELLO;sleep 1;echo REEF;echo ls’ 
	```
* The response notifies how many requests the scheduler received and how many tasks are waiting on the queue.

* The results of tasks are written in the log files - both in driver's and evaluators'.

* By default, the application reuses existing evaluator to run Tasks. Using `-retain false` option, the driver allocates an evaluator for each command.
This method is called only inside the synchronized context.(One in ActiveContextHandler.onNext and the other in CompletedTaskHandler.onNext). Even so, is it better to explicitly synchronize one more time? Is there any overhead for nested synchronization?