Refactor and update documentation
Continue refactor & update docs
Added new example