Adding dependencies and reformat of the global code for helping further developments