Flesh out structure and functionality