Make printf work

- Most common printf functions work, this is thanks to Brain from ChatSpike for showing his kernel (I have credited him)
- Got some more of the string functions working in string.h
- Replaced all vga_write_string statements in main.c with printf statements
- Probably some other minor work too, read the diff.