weapons now using engines, no more ugly inheritance