Add specification documentation

Still incomplete, but review may start on the parts that are in there.

Fingerprint definition if still missing

ping @jlhawn 
Is there only a single key per libtrust client? In SSH a client can submit all of it's keys and the server will pick whichever one matches. Should a libtrust client with multiple identities just drop and reconnect the TCP connection until it runs out of things to try?