refactor: pass compiler options as a hash

Closes #151
fix: validate compiler arguments

Closes #100
feat: add textarea support

Fixes #155
Closes #157
Early version of public website skeleton

This commit is HUGE
It includes all the moves related to the creation of new build
for the documentation website, and a lot of refactoring.

For example, tests are not anymore in `public` folder.

closes #137