I know it's not the intended use case but I primarily utilize 
Ansible for individual, customized hosts. It absolutely rocks when you 
have dozens of systems to manage though. For individual hosts I use it 
as a way of documenting how a system came to be in its state almost for 
disaster recovery (i.e. what software was installed, config file 
templates, etc.). If you find yourself setting up certain stuff 
routinely, make it a "role" and reuse it like a function. I do cheat on those custom boxes though by 
running through the ansible playbook that takes me 90% of the way there,
 then a README to explain the little stuff I had to do by hand because 
it's still easier to adjust something by hand sometimes.
Like any complex framework, it takes a bit of patience to learn and learn some more before getting to the payoff point. At least that's how it is for we mortals.