CYB-230  Refactor the Comments API

* code is far safer (handles bad input better)
* now scores when a comment is posted (subject to comment scoring being turned on -- still creates
   the entry but marks it as not scoring, as per other scoring cases)
* Far better spec coverage