Changed some struct to be more Go-like.
Changed visibility.