long overdue commit--lots of changes client-side