Fix for unjoinable thread crash at exit against boost 1.52
Fix for unjoinable thread crash at exit against boost 1.52

Replaced the blind call to gc_thread.join() with a check to see if it is
joinable first.  Runs perfectly.

shaobozi/PhoenixCore,shaobozi/PhoenixCore,jonparrott/PhoenixCore,jonparrott/PhoenixCore