#23384 better logic in get_install_location().
Previously, this method would just return the location of the current
code. Now it attempts to locate the associated code correctly, first by
looking for a localized config, then by following the redirection files
defined in the PC for non-localized configs, and lastly - as a fallback
- it falls back on introspecting the currently running code.

Also removed two 'magical' legacy environment variables
TANK_CORE_LOCATION_OVERRIDE and TANK_INSTALL_LOCATION that are not being
used by the code base and were there to support legacy dev and
test setups.
#23382 added sgtk proxy
Tweak: removed double 'v' prefix for version numbers in api repr and str
Tweaks to api version mismatch copy. Fixed an issue with path lookups.
Tidied up dialog creation interfaces and comments
fixed a typo
Added ability to hide the title bar in a tk dialog by specifying the
property 'hide_tk_title_bar' on the widget class.
Merge branch 'master' of ssh://git@github.com/shotgunsoftware/tk-core.git
Added execute_on_main_thread function that can be used to ensure a
function executes on the main thread
execute_in_main_thread now falls back to running in the current thread
if the engine doesn't have Qt available
#1863 Pressing the 'reload apps & engines' button refreshes templates.
Chopped some long lines.
added a sgtk.platform.restart() which restarts the current engine
Added helpful comments :)
Fixed issue stopping engines without UI available from initializing
Merge branch 'master' of ssh://git@github.com/shotgunsoftware/tk-core.git
Fixed issue with previous commit when creating invoker
#23879 added post_engine_init() method to app. (Pull request 42)
Merge branch 'master' of ssh://git@github.com/shotgunsoftware/tk-core.git
#23893 #23879 Added a 'reload and restart' button. Altered init order.
Adjusted the init order slightly so that the post app inits run before
the post engine init. This is better because a bunch of finalizing stuff
often happens in the engine init (for example adding menu items) so it
can be difficult for apps to alter the state of the setup if their post 
hooks are executed after the engine post hook.