Documentation and minor changes

Readme with license

Using strict and documentation.

Some more documentation.

Update README.md

Documentation
sui instead of self
Merged