masked1, originally, the upper four bits of an IP address defined the "class" - A, B, C, D, E - which determined what was the "network address part" and what was the "host address part." These addresses were self-describing; no out of band data was needed to move around the routing table entries. Then came subnetting, where local routers divided the "host address part" into a "subnet address part" and a smaller "host address part" - now the subnet mask became a necessary piece of information for local routing decisions. Finally, CIDR came along in BGP4, and top-level routing could also work in terms of an address and a mask (actually a prefix length). In the current world, addresses whose top bits would fall into A, B, or C are routed per CIDR as a network address with an associated prefix. If you hear people talk about "class C" networks for example, this is now a misnomer - it's a "/24".
Class D is used for multicast. Most host and router implementations treat these specially per multicast, or at least won't work with them as a normal unicast address. Class E is reserved, and generally unused.
127.0.0.1 & 255.255.255.255 are special magic addresses that don't fall into any of these categories, really. They're special cases.
IPv6 is a whole new packet format with addresses that are 128 bits as opposed to IPv4's 32 bits. The formats are described in the info others have replied with. IPv6 has been in development for more or less a decade and is showing no real signs of taking off. The details of whether or not IPv6 is a whole different discussion, suffice here to say that comments that IPv6 is the "new" IPv6 addressing scheme treat as a foregone conclusion something that isn't.