There are now over 300,000,000 guns in the U.S., roughly 1 for every person. We need to focus on the ammo. If police stations were the only legal place to buy bullets, then those contemplating mass murder will have a much tougher time stockpiling the ammo. The Aurora shooter, for instance, ordered 6000 rounds mail order. That should not be legal. Each bullet would be coded, identified as belonging to the purchaser. A waiting period could be instituted so that people would have to wait two weeks for the ammo to ship to the station. During that period, background checks could be done if warranted.
Take the profits from the bullet sales and use it for gun safety training, and for aiding those who are victims of gun violence.
Police departments would also be the ideal place to administer a gun buy back program once a necessary ban on assault weapons is implemented. I think police departments in particular would be for such a system.