Added. 重新实现的协程和调度器

和之前的实现相比，采用的是“对称的协程”的方式，但是提供的API依然保持“非对称协程”的方式。因为非对称的协程API更容易使用。
主要的改进：
1. 代码更加简洁，易于维护。
2. 支持多线程
已知问题：
1. channel在多线程或者只有一个协程时，调度器会浪费大量的CPU频繁切换。导致性能很低，并且CPU占用很高。
2. scheduler::quit()并不能立刻停止所有的协程任务，因为调度器内部采用的是无优先级的队列，退出消息并不能立刻被调度器处理。
Added. 去掉不必要的线程。