Mark phony targets as .PHONY

doc, doc-clean, all, and clean are all phony targets, and should be marked as such to prevent make from doing the wrong thing should files of these names ever exist.