Extracts some methods to make testing easier.
Isolates Base64 codecs.

They were polluting some other files with global variables
and non encapsulated logic.
Removes more global variables

DH1080_Init used two global variables to receive a random seed source.
Transformed them into function parameters.
Moves seed generation to FiSH.c. Cleans DH1080.h
Moves initb64 from DH1080.c to FiSH.c

This initializer shouldn't even exist, probably.
The base64 table doesn't change, so we could just
statically fill the table.
Cleans up some header files.

- Added include guards.
- Moved include directives from headers to implementation files.
- Fixed a base64 infinite loop warning.
Transforms DH1080 global state into context.

DH1080 functions now receive a context variable,
instead of relying on static variables to store state.