merged davids branch. added beginnings of virtual shell