Modified path-finding to cater to entrances/exits. Fixes #3.

- Added entrance and exit offsets to specify where customers will enter and exit a building. Default entrance and exit offsets are 0 (i.e. on the lowest floor of the building item). [Prototype.h, Item.h]
- Routes are computed based on the floor of the actual map-nodes provided, instead of the floor of the item. [PathFinder.cpp]
- Cinema patrons enter from the top floor and exit from the bottom floor. [Cinema.h, Game.cpp]
- Metro passengers enter/exit from top floor to go to other floors. But they also enter/exit from middle floor to visit shops on that floor. [Metro.h, Game.cpp]
- Only one instance of Metro Station allowed in-game. [Game.h, Game.cpp, Metro.cpp]
- Cannot bulldoze Metro Station. [Game.cpp]

Bugfixes
--------
- Person now starts the journey on the correct floor according to the 1st node in the journey. [Person.cpp]