Added viewer and changed lots of things