Changes to get the libraries building on windows - Merge pull request #4448 from RosettaCommons/solberg/minirosetta_windows
In src/protocols/jd3/JobGenealogist.hh, the hash function for some custom classes (which themselves didn't seem to be much more than pointers) could not be found since they're in another namespace, (and then not part of the custom class itself and only included via using), so I put in explicit hash functions for the unsorted_sets.
In src/protocols/jd3/util.cc and /src/core/io/mmtf/util.hh there were some ambiguous types for which I had to guess at which one was intended, hopefully I guessed correctly.
Had to add in lot of #includes which were probably forgotten due to gcc's order of compilation happening to include them from elsewhere before needed, or something like that (owning_ptr.hh was the most common)
Had to remove direct usages of std::make_shared- I believe we are intended to be using utility::pointer::make_shared, and directly calling std::make_shared causes mixture between boost and std shared pointers.
Removed an exit "status" variable that I couldn't find the definition for in src/utility/exit.cc . Just replaced it with "1" since it seemed to be used for exit failures.
Fixed a naming collision in src/utility/pointer/deep_copy.hh
S_ISREG and S_ISDIR are linux-only things. Replaced them with boost is_directory in src/protocols/docking/DockingEnsemble.cc
In src/protocols/boinc/boinc.cc, reverted a change from Oct 31st 2018 which caused (I think) a partially specialized template