....he must have been reprogramming my modem. Is this correct dman? I would assume he was resetting my modem to accept 2 incoming signals. If this makes a difference, he told me that the second IP is in a different subnet.
and 
what authentication does the "cable modem" do? I thought it was just a specialized router that converts the cable signal to Ethernet. Correct me if I'm wrong.
I don't know the technical details, but, the modem has a unique ID (Similar to or equal to a MAC Address).  When you're modem connects to get it's IP address it is also sending out some form of encrypted data which includes it's unique ID.  Based on this address the cable head end knows a lot about your setup.  It knows what modem it is, what user account is assigned to the modem, and can potentially get more information such as the line quality, etc.  This is all done behind the scenes and before you can get connected.   
So, Yes, The modem is a tranceiver--it does convert from cable to ethernet--but it also does more (higher layer) items as well.  Such things as encrypting your packets (so your neighbors can't "sniff" your traffic), DHCP, NAT (available) and more.  For Example: The Surfboard 3100 Cable modem that I have is capable of doing NAT so it COULD allow multiple machines on my network with a single external IP address and replace my Netgear RT311 router if the cable company would enable those features.  They don't.  
Thus, what this means, is the cableco can and does restrict bandwidth and MORE.  Not all cable companies do this, not all equipment is capable of it (my old internal Surfboard 1000 internal ISA Adapter was not programmable from the head end and was sometimes faster than the capped 2way modem my friend had at downloads). 
It is my understanding that ALL DOCSIS modems are programmable equipment and I do know that Adelphia does implement caps in their 2way Modems.
I have never seen my dl speeds crap out because of my upload speeds.....it the upload (file or webpage) request that is getting slowed...hence the page or file seems to take more time to come up. 
Not sure what you mean by the last part, but, on my 1way system--(2way really, but, cable company requires I use dialup for the upstream)--if I'm uploading a file (say napster) and try to hit some web pages the system crawls!  I'm not sure of the exact details, but, The nature of most applications (HTTP, FTP, over TCP/IP) is to send a request for data and/or an acknoldgement of data received before the next packet can be sent.  Thus, if something is taking up all of your upload bandwidth (napster upload), you have to wait until a break in traffic occurs before the next request/acknowledgement can be sent to receive your next set of download packet(s).  (This is one reason why DefaultRCVWindow registry setting is very helpful-- you can configure how much can be downloaded in each packet before the next request/acknowledgement).  
I will say, that on a 2way cable system with 128Kbps upload stream normal web surfing and downloading isn't going to be a problem.  But, running a file server where people are using most of your upload bandwidth can and will slow your surfing down because you run low on upload bandwidth (used to send those requests and acknowledgements).  (BTW, Much of the way this works is configurable, to an extent, via the OS so you can tweak it for better performance but eventually you hit a wall where you can't get more!)
There are a lot more knowledgeable people than myself on this matter and I'm just repeating what I've read in the past and taught myself.  So, if I made a minor mistake on wording I apologise, but, I believe my concepts are correct.
DSL Reports is a great resource for reading up on these issues and if you read through the forums there you will learn a lot more than what I have touched on here.  
DSL Reports (Also good for anything networking related including cable systems)