First version of new branch marco, adding a lot of untested things