ripped out knockout JS. couldn't deal with it anymore. implemented ractiveJS instead and this whole thing is so much cleaner now.