Re-order methods a bit for readability and hide internal method behind an underscore.