This is the demo project for the presentation I gave at Unite Europe 2016, "Overthrowing the MonoBehaviour tyranny in a glorious ScriptableObject revolution."
It was built with Unity 5.4 beta 17, though it should work fine with later versions, and I don't think there's anything in the code which would break if backported to earlier versions.
The code is not super documented, but make what you will of it :)