lib/standard/math: Added function is_even to Int

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
lib/crypto: Added cryptography basic algos to lib

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
lib/standard/string: Moved escape_to_dot from nitcc to standard/string.nit

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
model: Fix comment for MVisibility

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
uml: Added UML class diagram generation from a Nit model

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
nit: Added new binary nituml, for generation of UML diagrams from Nit source code.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
nituml: Can generate UML package diagrams from nit source.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
nituml: Added tests for new tool

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Merge: Crypto

Basic cryptography module, introduces some simple forms of cryptography algorithms.

Pull-Request: #763
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Jean Privat <jean@pryen.org>
Merge: Model uml

Introducing a new tool `nituml` for the generation of UML diagrams from a Nit code base.

For now, it supports the generation of a class diagram from an endpoint based on the flattened class hierarchy and the generation of a package diagram from a module, showing all the introduced and refined classes using a colour scheme (will be changed as it is as ugly as it might be misleading for the end-user).

How to use :
`nituml --diagram class [-p] lib/standard/standard.nit` => generates a class diagram in dot format for the stdlib
`nituml --diagram package [-p] lib/standard/string.nit` => generates a package diagram for the string module, showing local intros and redefs of classes/methods

Example of diagram :
`nituml --diagram class lib/standard/kernel.nit`
![kernel](https://cloud.githubusercontent.com/assets/1444825/4342041/f600a4ea-403f-11e4-8720-3bd27d9802c7.png)
`nituml --diagram package -p lib/standard/queue.nit`
![str](https://cloud.githubusercontent.com/assets/1444825/4342100/bfb83398-4040-11e4-84e0-c83896748f87.png)

TODO :
* [ ] Generate associations between classes
* [ ] Eventually generate a diagram for a new Nit project as it could be used for model-first design approaches

Pull-Request: #760
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>