added new cannon code, cleaned up a little and was good to go