[quote]I’m a little confused about registering nameservers
Registering them with the domain’s registrar is necessary if you’re using hosts within a zone to provide nameservice for the zone itself. This solves the chicken / egg problem of delegation, by adding the relevant “glue” records to the authoritative servers for a TLD (like com.).
aura% dig ns1.dreamhost.com @b.gtld-servers.net +norec
;; ANSWER SECTION:
ns1.dreamhost.com. 172800 IN A 188.8.131.52
These “glue” records allow the gtld-servers to delegate dreamhost.com to ns(1,2,3).dreamhost.com. 
The servers that are authoritative for com. have to know what ns1.dreamhost.com is before they can delegate it.
[quote]if I want to sell webspace on another server somewhere else
(using my domain here as the “sales point”), can I use
ns3.mydomain.com, etc. there?
That all depends. If you have nameserver software running on a machine somewhere, you can point a record like:
ns1 IN A 184.108.40.206
You can do this yourself from the web panel. Then you can even register this IP as a host (nameserver) for your domain. The issue is when we provide the nameservers in question - in that case, you have to pay us money.
Any domain should point to at least two nameservers, and the nameservers should be on different machines and different networks.
I hope this makes sense and answers your question.
 This is why you should never use a conventionally used subdomain like “www” - stale glue from people registering “www.example.com” is a common cause of inconsistent DNS behavior (some people will see the outdated information; some people will see the new information).