Expanded block cipher support

## Changes:
* AES now accepts ECB mode, not just CBC mode
* DES now suppported
    * CBC and ECB modes
* Triple DES (3DES) now supported
    * CBC and ECB modes
* Some spelling/grammar mistakes in code comments and README fixed
* More robust error checking on AES inputs