Fixed issue #32

New() and start() were being told to delete the same thing.  When New()
got to it first, it would cause start() to throw a null pointer.  I also
removed bad_smoke and bad_smoke_spread because it would cause lighting
bugs.  They were only used in wizard, ninja and admin stuff so I just
replaced those calls with harmless_smoke_spread instead.