This guide is because the default images you get from cdimage.ubuntu.com are only for the Pi2. Moreover, they use uboot and for whatever reason, whenever you do an apt-get dist-upgrade, the Pi stops booting after a while.
With this in mind, I decided to figure out how to build Ubuntu 16.04 and 16.10 for the Pi3, which didn't contain all the crap and just had enough for me to run a headless server build.
First of all, you need a Pi2. You need to get the image from here and pop it on your SD card (I am sure you'll know how to do that by now, if you don't Google it.)
Once you've got the Pi2 booted, run something along the lines of this:
sudo apt-get remove *raspi2 sudo apt-get remove uboot*
This'll remove all the uboot packages and anything that Canonical have added for the Pi2.
Following this, you'll need to follow my guide on building your own kernel and install it to the SD card.
From there, you should be now booting into your new kernel for the Pi3, minus all the packages that prevent you from booting on the Pi3.