**Until v0.3.1:** Variables, functions and types were implicitly declared.
**From v0.3.2:** Variables, functions and types needs explicit declaration.
Due to a major design flaw in previous versions, breaking compatibility was necessary.
Removed
* StuctRef (struct references).
Added
* Declaration element
* Constructor for `Function` takes an optional params argument.
Changed
* Variables, functions, structs are no longer implicitly declared.
* Use explicit element `Declaration` for all declarations.
* Method `FunctionCall.add_arg` renamed to `FunctionCall.append`.