> 1) Add itself to the user's custom-theme-load-path
Yes. The code is a little tricky, so look into how other themes do it.
> 2) Load itself via load-theme
Absolutely not. Users should be able to have multiple themes installed without them all turning on simultaneously.
I do agree with need a more intuitive theming experience for new users, but that's a whole other topic.