Feature/add curved lasers

Adds curved lasers, also abstracts bullets a bunch.