Refactor and update commands. Respect DRY and be consistent