improved Makefile: static pattern rules and object directory