arduino uno design problem

CrossRoads:
One thing you can't do via ICSP is debugging with Serial.print statements.
The USB/Serial is key for that.

Technically, yes, Serial.print or MySerial.print needs an output pin, but a $2 buy-it-now/freeship usb-serial Silicon Chip CP210x will do nicely. It is not that it needs to be dedicated to the project.

Heck, for $15 you can build my dedicated serial terminal and test gen:
http://www.hackster.io/rayburne/the-qbf-signal-generator

Serial is useful for debugging but I recommend debugging on the "real" arduino and then sanity checking on the deployed hardware config... In this case, Serial() may even be disabled entirely to recover a few resources.

Ray