SHORTEST_PATH: initial vertice implementation (not compiled) + MAPWIDTH

- vertices_ now holds all vertices properly linked to each other.
  Implementation is an initial uncompiled version
- added constant Util::MAPWIDTH with value of 400
- replaced magic values with it (402 with Util::MAPWIDTH+2)
  so the map is now 2 pixels larger in both directions
SHORTEST_PATH: verticeconnections now follow wall addition/removal
SHORTEST_PATH: vertices updated for Dijkstra and algo started
SHORTEST_PATH: Added vertices and shortest path algorithm

- Vertices added. Adding walls breaks connections and removing
  walls renews the broken connections.
- Shortest path is now calculated with Dijkstra's algorithm
  (in calcPath function) and the path_ is stored in IRoomba. The
  function's return value is the length of the path.
-  Adding/removing walls seems to work with vertices but the
   calcPath is untested
SHORTEST_PATH: fix to verticeconnections when removing walls

- now connections to vertice are renewed when the wall to be
  removed is in its area but no other wall is.
- for implementing above functionality, I added reimplementation of
  type() -function to PoiQGraphicsEllipseItem and
  WallQGraphicsLineItem
SHORTEST_PATH: shortest path initially implemented (untested)

- go2Poi makes selected roombas to calculate their path to Poi
  (calcPath) and chooses nearest ready IRoomba to usePath
- usePath calls go2Point and sets followingPath_ true
- Rest of go2Point calls are done according to booleans
  followingPath_ and prevPointReached_ in sensorUpdateTimerTimeout
SHORTEST_PATH: some fixes done, but still not working correctly

- currently calcPath finds some path to POI and following it
  works. The path is often incorrect. There are probably some
  errors in the vertice connections.
SHORTEST_PATH: Roomba follows shortest path around walls

- finding shortest path with walls in the way works
- removing walls correctly renews connections (not thorougly
  tested)
- roomba follows the path correctly
- currently there are simple lines showing the route to help in
  future debugging
- checkPoiCollision doesn't remove poi to avoid a crash. A more
  clever implementation of the func will avoid the crash