Changed the way I made FFI functions private, and attempted to add more privacy to the structs and constants, and added a few checks for privacy in the test suite.