Create empty implementations for all the Cubeb Rust interfaces first. Before implementing the underlying platform-dependent code in Rust, it's better to make sureall the Cubeb APIs are callable from C/C++.
On ther other hands, it's a good opportunity to know how the Cubeb Rust interfaces connect to the Cubeb C interfaces. All the Cubeb Rust interfaces are in `cubeb-rs` (https://github.com/djg/cubeb-rs) git repo. The types and APIs of Cubeb are passed from cubeb-sys to cubeb-core to cubeb-backend, and therefore are called from cubeb-backend to cubeb-core to cubeb-ffi. To implement platform-dependent behavior, a `Context` instance is created and is used to call the platform-dependent APIs based on the platform libraries. The above note are commented verbosely in the code for now. They should be removed once it's ready to publish. Just leave them to make other beginners(like me) know how it works for now.