Introduce MOVEMENTTYPE type for safety. Fix bug in Avatar.

All places in the code, which deal with the movement type(whether you are flying, walking or a Ghost) were using using integer constants. These were replaced by an enum.

In the Avatar I noticed that there were parameters in the wrong order, so I assume it was a bug:
```
-      if ( map->collider.compute_path(stats.pos, target, path, 1000, stats.movement_type)) {
+      if ( map->collider.compute_path(stats.pos, target, path, stats.movement_type), 1000) ```