(I'm late to this party but let's see what I can do w/ it anyway.)
You're asking about two distinctly different things-- name resolution via DNS and IP routing. Let's tackle them individually.
The DNS Part
I know that the dns information is located on a DNS server, but how does my computer know where to immediately look for that? Are there DNS servers at fixed IP addresses that my computer automatically goes looking for?
Typically, client computers are informed of the IP addresses of the DNS servers they are to use by way of data in "options" given to them by their DHCP server (the server that provides a "lease" of an unused IP address for the client to use).
Some computers don't use DHCP to obtain an IP address, but rather have their IP address statically-assigned. In cases where computers have statically assigned IP addresses the DNS server IP addresses are also statically assigned in the computers' configuration.
(There are more esoteric methods for getting DNS server information to clients, but the two above cover well over 90% of cases.)
It sounds like your computer is on a home network and is probably getting its IP address assigned from a DHCP server running on either a router in your home network or a DHCP server at your ISP.
In the case of a home router, it will have obtained an IP address from your ISP's DHCP server and, in the course of obtaining that IP address, will have learned the IP address(es) of the DNS servers your ISP intends you to use. Some home routers will provide the ISP DNS server addresses to the clients of the router's DHCP sever. Still other home routers will run a "mini" DNS server themselves and will direct DHCP clients to its own "mini" DNS server. Typically this "mini" DNS server will just forward requests on to the ISP's DNS servers.
If your computer is connected directly to the ISP's network w/o a router then, very likely, your computer is being provided the IP addresses of the ISP's DNS servers by the ISP's DHCP server.
IP datagrams contain the destination IP address and not a human-readable name. In order to "talk to" a remote server your computer needs the IP address of that remote server. The process of "resolving" a human-readable name into an IP address (suitable for inclusing into IP datagrams as a destination address) is called a forward DNS lookup.
I won't belabor a full description of recursive forward DNS resolution here, but, basically, your client computer sends a request to its DNS server (the one it learned about from DHCP or that is statically configured) for the name "www.serverfault.com". That request will make its way, eventually, to a DNS server at your ISP. The DNS server at your ISP will make a request to one of a list of well-known "root DNS servers". The answer that the root DNS server returns will, in turn, guide a request by the ISP's DNS server to a ".com" DNS server, then to a "serverfault.com" DNS server. Ultimately, an answer will be returned by the ISP's DNS server to your computer (possibly via DNS server in your home router, as mentioned above).
I'd encourage you to look into some more technical descriptions of how the DNS protocol works if you're interested in details.
That gets us through the DNS-related part of your question. Now, let's move on to the IP routing part of the question.
The IP Routing Part
What makes it take the route that I see in the trace route?
The result of all those DNS queries will be an IP address (or multiple IP addreses, to be technical). Your browser will initiate a TCP connection to one of the addresses returned by the DNS query. This will result in your computer sending an IP datagram (destined for an IP address returned by our earlier DNS query) to the "default gateway" known by your computer. That "default gateway" is nothing more than the IP address of another computer (typically a router) that your computer "hands off" packets to for delivery to the Internet. Assuming you're using Ethernet, the specifics of how your computer "hands off" an IP datagram involve the ARP protocol and specifics that are probably a bit too deep for this answer.
You might ask: How does your computer know what the IP address of its default gateway is?
Similarly to the way in which computers receive their DNS server addresses from DHCP computers have their "default gateway" provided to them by an "option" received when an IP address is "leased" to them from DHCP. If a computer has a statically-assigned IP address then, typically, its "default gateway" will also be statically assigned.
Fundamentally, IP routing is a game of "handing off" packets from one computer (routers) to another until the packet gets to its destination (or "dies trying" if the packet gets forwarded too many times). Each router has a number of network interfaces that connect it to other routers. When it receives a packet a router "decides" which network interface would be the "best" for that packet to leave through and, after making that "routing decision", it hands the packet off to another router via the chosen network interface. That process repeats until your packet reaches its destination.
My epic subnetting answer discusses the basics of static IP routing. In static IP routing, each router has a statically-assigned list of destination networks and understands the "adjacency" of networks to the router's network interfaces. In Real LifeTM static IP routing isn't used within large networks because it's too cumbersome to maintain and it doesn't take into account routing around congestion or failed links.
The "traceroute" you perform shows you the results of routing decisions made by routers along each "hop" of your packet's path. These routers use dynamic routing protocols, like Border Gateway Protocol (BGP) or Open Shortest Path First (OSPF) to make decisions about how to route your packet to another router. These dynamic routing protocols can take into account factors such as link congestion or availability, relative "distance" your packet would travel along each prospective path, and possibly other factors (including "political" factors such as peering agreements) to determine where your packet goes.
The specifics of how individual dynamic routing protocols work is well beyond this answer. Fortunately the architecture of the Internet is such that endpoints (like your computer, or the servers at Serverfault.com) don't need to know anything about routing of packets inside the "cloud". As long as all the routers inside the network play by the proper rules packets will be delivered (though IP allows for out-of-order delivery and loss of packets-- higher-level protocols take care of handling these occurances). Better still, new dynamic routing protocols can be devised and implemented inside the "cloud" and nothing needs to change for all the end-points to take advantage of improved routing.