Expand a little on SecretBox docs

Explain a little more about authenticators and how they're compared
Add link to Blaming the Cryptographic User
Initial Crypto::Scalars with #mult_base

This is the first shot at trying to add an OO API to Crypto::Scalars. It
should be sufficient to compute a Curve25519 public key from a private
key.
Convert Crypto::Scalar to module, add .mult

This commit reimplements Crypto::Scalar as a module as that seems like a
more sensible API per the previous discussion.

It also adds a Crypto::Scalar.mult function that takes a group element
and an integer for doing things like Diffie-Hellman.

In addition, it pulls Crypto::Scalar.mult_base into pure Ruby, adding a
constant for the standard group element used to compute NaCl's
Curve25519 public keys. This means we only need to use an FFI binding
for .mult
Remove encoding support from Crypto::Scalar

I also took this opportunity to rename "value" to "scalar"
Merge pull request #19 from cryptosphere/scalars

Crypto::Scalar
PublicKey derivation from PrivateKeys

This commit mostly adds the derivation of the PublicKey from the
PrivateKey by the newly exposed Scalar functions.  However, it also
takes the opportunity to harmonise the interface with the SigningKey and
VerifyKey, accepting encoded keys, and returning them via the #to_s
function.

Fixes #14
Merge pull request #20 from cryptosphere/dev/key_deriv

PublicKey derivation from PrivateKeys
dot
Suggested reading
Scalar multiplication docs
Scumbag backtick
Dragons
Here be DRAGONS
Base32 notes
Process
Usage notes for Crypto::SecretBox
Oops, some leftover italics
Label Ed25519 diagram
Disambiguate public values