Trap/Room creation in a more objet way (avoiding void* pointers)

- Trap/Room creation in a more objet way (avoiding void* pointers)
- Removed ODPacket.h from header files where it is not needed
- Prepared Traps to allow trap specific parameters
- In level files, traps/rooms are not anymore identified by their mesh but by their type
- In level files, traps/rooms are separated by [Room][/Room] [Trap][/Trap]
- In the level files, rooms/traps with 0 tiles are not saved anymore
fixes #228