blundering towards three-tiered web app
Shuffling code around