Changed the makefile to be more useful.

Now instead of compiling all the time it actually uses dependencies.
Also reorganized the directory structure. All source files are now in
src/, all intermediate object files are in obj/ and the final executable
is in bin/. Also the makefile will automatically compile any source
files added to the src/ directory.