refactor droplet creation, a lot of the params can be encapsulated in the droplet struct, who knew right ....