refactor package structure and add compiled macosx version.