Returns the list of targets within the given distance or range.
Targets may not be restricted to only enemy units.
For each target detected an array is created as a sub-array within the returned Array.
Each sub-array entry will consist of:
* Position - A perceived quantity which will include judgement and memory errors.
* Type - A perceived quantity giving only what was recognised.
* Side - Perceived side.
* Subjective Cost - Positive value for enemies, greater value for important or more dangerous enemies.
* Object - Object type, can be used to get more information if needed.