Add UNREACHABLE helper macro
Add sesh::async::Result class template
Make Variant class template non-final
Add Variant constructor to initialize from function
Add Delay class template
Add DelayHolder class
Add Promise class template