The below may be a bit different for the new gTLDs, but for traditional TLDs:
DNS Registry: they keep track of who has paid for what names and run a set of DNS servers that are root servers.
Yes. A registry is the organisation (usually at a national level and often non profit) that oversees the operation of a country's TLD(s). For instance in the UK Nominet are the registry and responsible for administering .co.uk, .org.uk etc. domains. Typically consumers can't deal directly with the registry but have to act through an accredited intermediary - a registrar.
DNS Hosting: any company that runs DNS servers can offer to publish that name aaabbbccc can be found at address 111,222,123,213
I think here Cheong is referring to registrars. DNSs are typically run by organisations such as ISPs for their customers and are typically a complete copy of the root servers run by the registry. You don't have to contact the operators of DNSs to be included on them.
A registrar is a third party who is authorised to deal with the registry on your behalf. ie. They will take payment for the domain and enter into the registry details of the owner, the IP address it should point to etc.
EDIT: A registrar doesn't (necessarily) host any DNSs themselves, they just update the root DNS on your behalf. DNSs are part of the website visitor's ISP's infrastructure.
a register may also offer hosting, a web hosting provider or other service provider may also offer DNS services.
A registrar would. Most registries don't deal directly with consumers.
as far as I know you can always register a domain and buy hosting from any service you want.
You can buy a domain from any accredited registrar or reseller (a reseller sells services on behalf of a registrar but can't provide registrar services themselves) and point it at whatever IP address you like. (I guess if a company that primarily provides hosting is providing domains to go along with that hosting they may not allow you to point the domain elsewhere but you could still transfer your domain away from them. Whether or not this is allowed would depend on the agreements between the registry and the registrar which govern such things.)
now I have seen companies offer package deals where they build a site and register the domain and then charge for the package. when that happens you need to read the fine print and make sure that the domain is in your name so that you own it and can take over.
Yes. In most cases the name in which a domain is registered is considered to be the legal holder of that domain by the registry. Thus beware of WHOIS privacy services that register your domain in someone else's name. Many registries now offer their own privacy services that avoid this pitfall.
normally there are multiple contacts for a domain, make sure you are the admin contact and only let the hosting company be the technical contact, if you are the owner / admin then it's yours. if you are not then they can hose you.
There will be an entry for registrant in the registry. De jure this defines ownership. Of course if you let someone else be the admin contact then, to all intents and purposes, they have de facto ownership.
also in the US most domain registrations cost less than$50.00 a year USD the only time they would cost more is if you have to buy the name that someone else registered, even then that is a one time cost.
Yes. Although gTLDs are operated on a far more commercial basis and can be quite pricey. I suspect they will flop, though.