Tighten up URL slug scrubbers for both pages and books

Pages => safe_name() & safe_slug()
Books => safe_name() & check slug against folders on filesystem (nb,
forward slashes not allowed for books)