Connection patcher: port to cpp and fix osx

note: no longer downloads nonexistent modules
note: now throws on not finding patterns
new dependency: boost.filesystem
this should be return ByteArrayToHexStr(h.GetDigest(), h.GetLength())

(std::string ByteArrayToHexStr(uint8 const* bytes, uint32 length, bool reverse = false); from Util.h)