Filled in structs, some of link TODO:smooth, finish link.