Remove base finding code from beacon system.
Make repair beacon an area beacon.
Use doxygen comments and some helper functions in Beacon.cpp.
Add a flag to decide whether spectators see a beacon.
Simplify Beacon::Propagate.
Merge friendly/enemy base/outpost beacons into BCT_BASE and use entity flags to differentiate.

TODO: Needs proper client side visualization.
Always tag teammates.
Don't send tagged structures and tagged enemy bases to spectators.
Cleanup Beacon::Propagate a bit.
Merge branch 'beacons+viech' of https://github.com/Unvanquished/Unvanquished into beacons
Make Beacon::MoveTowardsRoom deterministic.