Revamped the API completely.
Added a simple shell example.