I even have some ideas how to solve cybersquatting issue if we are to build a name system to build alternative to DNS, trademark registries etc.
Are you talking about Namecoin? Of course, there it is "first come, first serve" with registering names, so maybe the problem you want to solve is there still. But what about applying your ideas to Namecoin (and discussing with the community whether they like them or not)?
No, namecoin takes wrong approach (imho). First problem: it started with its own blockchain (however they realised they'll never convince ppl to mine as hard as BTC, so they essentially thrown it away via merged mining). Economically, only one blockchain will ever be considerably big, while all others — realm of the hobbyists. Second problem: they propose new registry for names when many people already got some names used, but do not address cybersquatting in any way. If anyone suggests a more "fair" scheme, it might be more viable.
My suggestion for a name system:
0. Think of it as a global name system, not only "domain name" system. For usernames, website names, trademarks, anything.
1. Use bitcoin blockchain for timestamping without funny merged-mining. Keep and distribute actual data outside the chain. Using existing DNS servers, or via p2p gossip protocol, or on known servers like torrent trackers, or any mix of those.
2. Start with a one or several of actual new services that sell idea "you own your identity". In other words, your login will be fully interoperable between multiple services, just like your domain name is separate from physical IP address. Except, it's totally yours (FBI cannot seize it) and your identity cannot be spoofed via root certificates.
3. This service (or services) will provide initial usefulness to such name system and fill it with early users, even if they don't care about such system themselves. They can also agree to implement a "bootstrap period" when only signed names are valid (keys will belong to such services). This is to prevent cybersquatting. It's similar to how App.net started giving usernames to existing Twitter users during some bootstrap period to make platform more attractive by guaranteeing your name to be preserved.
Economically, it will play out like this: if services are giving out names unfairly, people in general will not recognize this name system as global one. This does not hurt anyone, just does not take off. But if the names are given out "fairly" (as perceived by people), then it may grow outside initial services (other services will recognize it). E.g. "oleganza" and "apple" are not given to random dudes, but to those who display ownership of such names in a reasonable name space (e.g. DNS, twitter, facebook, google+, trademark bureau etc.)
The bootstrap period can be limited by the protocol. E.g. after block number XXXXX no one checks if the signature of the name is valid. This way people will see that it's guaranteed that original name registrars are not going to wait till network takes off and then charge monopolistic prices. Secret keys held by registrars will not allow revoking the name, only registering it for the first time. Once it's given to you, it's fully yours. If the secret keys leak, then it's equivalent to an end of bootstrap period. If it's too early, it might attract cybersquatters and make the scheme less interesting to everyone. We may use N-out-of-M signing scheme to prevent single registrars from accidents. Bootstrap registration can scale by adding extra registrars with good reputation and incentives to support the cause.
Names will require heartbeat transactions. If you lose your keys to your name and do not update (ping) it within, say, 1 year, it becomes free to anyone to claim (during bootstrap period it should still be given out by a registrar).
To distribute the data, we can imagine a payment protocol using BTC: you pay nodes to store and propagate your name data to other nodes. This way you will sponsor directly most efficient guys who will keep all clients up to date. "Semi-trusted" nodes will emerge that will validate data for users, without them having to check blockchain themselves. Client apps can request short blockchain excerpts to validate correctness of name history, or talk to several independent nodes and compare results.