I spent some time today trying to synthesize the various things I've read about representing linguistic features into something that makes sense to me.
What I'm going for right now—tentatively—is to try to do something with feature geometry. I just found out about it... it must be less than an hour ago, as I write this, but it seems interesting, and accords with some of my previous attempts to understand how features are reasoned about.
In 2008 Jeff Mielke argued that feature geometry merely recapitulated physiological organization, and that since the influence of articulation on sound change will independently create patterns in the behavior of features, feature geometry recapitulates diachrony and is redundant as a theory of the mental organisation of phonology.
This criticism doesn't seem to speak against using feature geometry for my purposes, because I'm not interested in specifically modeling mental processing; rather, I'm interested in the observable changes in phoneme usage in particular contexts over time.
Unlike some other areas of this project, where I can look at a theoretical concept and work out "Well, obviously this should work for my purposes, and if I make these concessions here, it'll simplify the overall implementation", I am not qualified to weigh in on the debates that appear to exist on these matters. The best I can do is to go through a few rounds of prototyping and see if anything is obviously and foundationally wrong with the idea.
I'll get on the prototyping tomorrow, but I'm going to try to take things easy for now.