Makefile: the obj directory needs to be created

Also clean is a phony target.
obj is also tagged as phony in order to fail
early if a file named 'obj' already exists.