Improved setup.sh

It now builds gcc as well as binutils and you might now be able to
actually run it successfully. The two lines near the bottom are
commented out because the guide I'm following says they're necessary but
they don't actually work on my machine. So I'm leaving them out until I
can confirm that they are still necessary. It might run now where it
didn't before because I haven't actually written sh code in a while, so
I forgot the exact syntax for setting variables.
Added a basic kernel file

Once again, this is copied verbatim from the wiki.osdev.com until I
get code that boots (or not, and I have to change this)
Added linker script and updated build scripts

Once again, this is copied directly from wiki.osdev.org. With any luck,
this will be the last of the copying I do.
I haven't yet tried to run this code in a VM, so I don't know that it
works. That's the next step