Introduction branch

Another thing we'll have to switch to more dynamic code. We can deal with this later, but I'm pointing it out so we don't forget about it. :)