Good advice. The only issue I have is in the first anecdote - absolving their debt based on a promise of future work? That's not letting a client push you around - that's being a downright idiot.
What is the license? I don't see any sort of license specified either in the code or the readme, which means it's explicitly copyrighted by you. I'd love to use this at my job, but I can't if you own it.