Light pretty print done

    On the current state the print() method is called and do the print by
    calling: Domain::getInstance().print(os).
    First it needs the user to enter manually the Domains he wants to print in
    the function (which is redundant to the Domain declaration), also there's
    no parent/son domain architecture which is odd and make the prints hard
    to read.
    Moreover the print is done "on demand" and can't display "on changes" which
    would be cooler for a dynamic interface.
Reorganized files for better clarity and added commentaries

    main.cpp is now empty and all the tests should be done in memlib_tests.cpp
    in the waiting of a real test suite.