#2 Polish code format
#2 #3 #4 Extract reading and writing, from the domain items. Use
interfaces where possible (List).
#1 Add unit tests
#5 Add Maven support (add /target)