Thank you for your very helpful feedback.
This will no doubt help me a lot. I've learned a lot since I last posted this, and you've only confirmed what I've been learning, so thanks.
As for #4, I'm not positive what I meant when I wrote it, but I think I was talking in terms of like how do you supply entropy for the RNG when generating the address. But I've tried out a NodeJS Bitcoin API and it generates addresses without me feeding it anything, so I think it is taking care of that part for me.
I appreciate your expertise, and thanks for the link to your project; I will check it out!