Moved all new work from icmc to this branch