I thought that the first page anyone sees on a site had to be named index.html, or is this just the standard?
Correct, web servers are configured to display an index page when a page in a directory is not specified. It could be index or default htm, html, php, etc. The order of preference is established by the server admin.
Both urls will display an index page if one is present.
http://www.mysite.com
http://www.mysite.com/cart/
CoffeeCup... Yeah, they are the best!