add safe pointer library as git submodule so that spl is not external dependency