Hi Aaron,
Please don't get disheartened, you are just coming up against some design challenges, and if you work through it systematically rather than getting overwhelmed with the details, you will find its not only possible, but satisfying, and hey, maybe fun!
I ran your database but...