factorize FileSystem kernel module

This commit factorizes functionalitites shared between the FileSystem kernel module of both the Editor and the CLI:
- a DefaultFileSystem is created
- the Editor FileSystem now extends the DefaultFileSystem
introduce the Exceptions module

The Exceptions module provide a set of Exception class that can be use to throw exceptions.
This module aims to better organize, format and manage exception from the JavaScript side.
refactor Screencast Controller, closes #105
fix log message to be more consistent
add support for generating screencast from the CLI, closes #42