Refactored generic signatures namespace.
Refactored generic signatures namespace.

Changes:
- Improved security with random salt.
- Replace null checking with pure functional monadic error handling.
- Major code and internal api cleaning.
Missing:
- Use key derivation function for key (will be added in very near future)

funcool/buddy