* Added rocksdb as a submodule in vendor directory.
* Add support for static linking using nimble.
* Add script to build static library dependencies.
* Disable warnings as error in deps build.
* Set recommended compression options in build and in library.
* Move static linking into wrapper code.
* Conditionally set linker using when defined(macosx).
* Add support for linking windows static libraries.
* Build rocksdb static libs using vcpkg.
* Remove lib prefix from library names for windows.
* Static linking is not supported on windows. Update documentation and CI.
The API is still very basic and suffering from multiple Nim issues
that will be resolved in the near future:
* destructors will handle the resource cleanup better
* converter concepts will enable a wider range of possible types
to be used as keys and values.
The API currently uses an ErrorResult type to communicate errors,
but RocksDB doesn't seem to have many recoverable failure modes
and I anticipate that the API will be migrated to use exceptions
once we get a bit more experience with RocksDB.
The C interface file was moved to a separate directory to make
nimble happy (`nimble check`).