Entities can have multiple light sources, and more

- added a flashlight
- lightsource array instead of single light source
- made all entities serializable in prep for new save/load code