Add specification documentation

Still incomplete, but review may start on the parts that are in there.

Fingerprint definition if still missing

ping @jlhawn