just one comment - your entire js is basically building a reactive workflow through vanilla js. it is a very commendable piece of work!
however, I'm wondering if using Reactjs+Redux would not reduce the amount of js by many orders of magnitude. You would get all your reactive processing for free.