Fix bug with framework link

Undefined symbols for architecture i386:
  "vtable for boost::filesystem::detail::utf8_codecvt_facet", referenced from:
      __GLOBAL__I_a in boost(path.o)
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Merge patch
Merged patch from SevostianovIvanSIS
- Add implementation for download option
- Some refactoring