phase/serialization: add utilities to get name and type of attributes

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
phases: add support for deserialization

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
tests: add deserialization test

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
lib/simple_json_reader: unprotect special char in strings

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
phase/serialization: fix test_serialization_redef to suport basic deserialization

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
phase/serialization: detect unsupported case until it is supported

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
lib/json_serialization: remove use of \b in Nit strings

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
lib/json_serialization: fix support for Char

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
tests: use a Char in test_deserialization

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Merge branch 'privat' into deserialization
RTA: force primitive types to be alive

Signed-off-by: Jean Privat <jean@pryen.org>
tests: add base_attr_init_val_int.nit

This is used to show the current bad behavior of uninitialized primitive
types.

See issue #276
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Signed-off-by: Jean Privat <jean@pryen.org>
Merge commit 'b7e675f'

Partially fixes issue #276 and add the test to exhibit the remaining bad
behavior of the issue
Merge remote-tracking branch 'alexis/deserialization'

Adds deserialization support to serialization framework and the Json
implementation. Also fix wrongful use of `' '` for chars in
generated
Json.

Merged to prevent bug with nitdoc and duplicate modules.

To be done next:

* Support for generic types
* Separate the json_serialization services in 2: pure json and json
* for
deserialization.
* Support NativeArray or its users