Minor improvement to recent exit() fix -- if the shader has no exit() call,
do not generate the extra branch & basic block.

This turns out to be important -- if we put the branch in there
unconditionally, and everything else is optimized away, it no longer looks
like the post-optimized IR is "empty", so the shader isn't flagged as
empty.  When displacement shaders are empty, our renderer handles the
dicing differently.  Hilarity ensues.
Windows port: add OSL_STATIC_LIBRARY define to disable dllimport/dllexport
when using BUILDSTATIC. The application linking against OSL needs to define
this if wants to link against a static OSL library on Windows.

Also fix build errors adding dllimport/dllexport on class members when the
class had them already.
Rename strtoi/strtof -> stoi/stof to match C++11 nomenclature