View Package

* Strict type checking support.
* Improvements to `ArrayList` and `HashMap`.
* Reorganized the files and namespaces.
* Refactored how templates are located.
* Added a `Template` type enum.
* Major improvements to all helpers.

Part of #6