Push some variable declarations closer to where they're defined
Change gun types from defines to enums