General gun bugfixing.
Created by: ComicIronic
Assault rifle icons now work properly. Fixes #1948 (closed). Energy guns no longer spawn cells when they're destroyed. Fixes #1510 (closed). Fixed a runtime with something trying to call .has_gravity on a null area.