expose and test crypto_scalarmult

fixes #65
I don't believe that's reachable. https://github.com/pyca/pynacl/blob/master/src/libsodium/src/libsodium/crypto_scalarmult/curve25519/donna_c64/smult_curve25519_donna_c64.c#L408 only shows a "return 0", no other return path. http://nacl.cr.yp.to/scalarmult.html says that the C function always returns 0 (the C++ function can throw an exception if you give it the wrong number of bytes, but the C API has no way to tell). I think nacl must have a return value just to be consistent with the handful of functions that actually do need a return value (basically `open`: anything that is checking a MAC or signature).

So no, I think that clause is doomed to be untested forever. A sufficiently-clever static analyzer could probably prove it, but I don't think we have one of those. We could remove it, but that might look even weirder. Should we document the line?