Correct checking parameters of generic interfaces

If a generic interface expects an integer type as parameter, type parameters of
components with attribute @integer() are now allowed. If it expects an
arithmetic type, types with either @integer() or @number() attribute are
permitted.
Add checking completeness of modules implementations

It is checked if all provided commands and events of a module are implemented.
If not, an error is reported for each missing definition. Moreover, code
responsible for analysis of functions definitions is extended. It is checked if
prototypes of implemented commands and events match their declarations in
interfaces or modules specifications. Tasks definitions are also checked.

The concept of a module table is introduced. It is a kind of a symbol table for
a module - it contains information about all commands and events that a module
must (provided commands and events) or can (used commands and events)
implement. It is located in a ModuleDeclaration object and contains full
information after parsing and analysis of the whole module.
Some small enhancements

Types of arguments of functions are now adjusted as described in the ISO
C standard. Moreover, it is reported if an invalid task is used in a post
expression.
Extract the substitution logic to a separate class

The code that is responsible for performing substitutions is moved to
a separate class and now it can be used outside interface references
facades.
Implement a facade hierarchy for component references

Facade classes for component references are implemented. They provide
a simplified interface for obtaining information about component references
and specifications of referred components. A facade for a component reference
is available instantly after creating the component reference declaration
object by invoking method:

pl.edu.mimuw.nesc.declaration.object.ComponentRefDeclaration.getFacade()
Implement checking correctness of wiring

Wiring contained in declarations of configurations is now checked and all
detected errors are reported.