Better structure

Cleaner and easier to maintain.
`success` is a bit generic. `successMessage`?