add all actions to implement the json marshler
support sub directories
all modify actions including tests