Major revamp, switched to PSR4 structure and changed composer.json.

Added support for multiple modes and ciphers. Fixed namespace issues.
Improve tests, minor changes to keying system