Made monster actions use tripoints (nearly) all over the place.

Nearly all monster functions using coordinates have a wrapper that uses tripoints.
This should allow monster to act on their z-level and not on the z-level the player is on.

map::route for tripoints is simply a wrapper over the xisting route function and ignores the z-level completely.
Same for new rl_dist, square_dist, line_to.

removed the ability to load monster::plans from very old savegames. That would require a conversion from point to tripoint and it will be recreated anyway.
fix missing check for z-level in map::inbounds
Changed monster constructor to use a tripoint instead of x,y