Applications are made up of multiple interactions and behaviours. Often times, our view controllers and views end up bloated because of the shear number of interactions that can occur. Furthermore, this makes testing our behaviours even more complicated since they are tied to our view layers.
If you just want to jump straight into the source, you can find a demo project @ github.com
Here's a deck that better explains the concept. Don't forget to checkout the code and please share 👍