Update the main exported functions to be explicitly signed vs non-signed. Add inline documentation