Various changes:

- Moved the _encrypt/_decrypt looping logic into new _cycle function.
- Cleaned & added documentation.
- Cleaned & updated CBC & ECB modes to use _cycle function.
- Added Propagating Cipher-Block Chaining (PCBC), Cipher Feedback (CFB),
  Output Feedback (OFB), Counter (CTR) mode of operation.