Final; basic outline. More to do