Flesh out the structure
Add ability to specify a name