Update tests and examples
Refactor FiberScheduler
Refactor suspending Use Fiber::this() to get the currently executing fiber, then only pass the FiberScheduler to Fiber::suspend().
Add simple examples