added string type, added support for loading plugins in directory, better CMake structure, plugin infrastructure, versioning