That's a decent analysis of the issue. We are discussing these points now here:
"id" attribute in db tables...
Google surrogate Vs Natural keys if you really want to go to town.
Personally, I think your current design sounds perfectly acceptable. How many rows likely in this database? I would have thought you are talking KB, maybe MB, disk savings - not really worth the effort eh?