Reworked all identifier quoting detections

Otherwise, trying to manage `debian-sys-maint` will fail miserably, quoted or not.

Now:
 1. Proper quoting detection using backreferences.
 2. Outputs the offending character when it is detected.
 3. Clearer and more robust detection overall.

Fixes #609 

**NB**: I am not very experienced with Ruby and this is my first time using rspec, comments are welcomed.
`host_part` is not used, but I figured someone could eventually do some better checks on it as well.