Move key types into their own module.

In particular, the key types are also parameterized by the same phantome
type used for nonces. Most of the changes are very simple fixes for the
fallout from this shuffling.

This is necessary for issue #3.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
Doc updates.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
First stab at high-level interface (issue #3)

This API exports the entire NaCl-compatible API, but there are still
some rough edges. Notably key management is missing, and needs some
tweaks still.

There are no tests - it's mostly just re-exports anyway.

Signed-off-by: Austin Seipp <aseipp@pobox.com>