As discussed earlier, the `Extension` class currently serves two purposes:

* model the source code of an extension;
* model the extension in the database with objects/obj_id;

I'm gonna think of alternatives, this is still a refactoring in progress