Better file name handling for warnings

Results from `FindAllCalls`/`Tracker#find_calls` now have a hash table for the `:location` instead of an array, and the new value includes a `:file` value. Warnings that are generated with a `:result` value will automatically use this value (unless a different value is given).

Also added some explicit file values for warnings when it is known at time of creation.