Change to launch multiple tasks if offer is big enough

Hi folks,
I've tried to make a patch for #14.

Belows are summary of my patch:
* AppResource was introduces to compare resources used tasks to be launched. AppResource describes quantities of CPUs and mem and provides some algebra for (CPUs, mem).
* Attributes of TaskBuilder is now TaskQueue, String=>TaskID.
* TaskBuilder#buildIfMatched was changed to TaskBuilder#buildUtmostTasksFor. This method fetches as many tasks as possible from taskQueue.
* newTasks in MarathonScheduler was changes to delegate TaskBuilder#buildUtmostTasksFor.

Could you review my commits and let me have your comments?