Can we publish the name of the registrar which is hosting your domain? Possibly good place to avoid registering domains.
If your name servers got changed without your concern,
1) Either there was some issue on registrar side and by mistake it happened (it's all about software and there can be bugs. But this will be unacceptable bug)
2) Some one really compromised your email account and was able to click forgot password at the registrar site and went through the process and somehow got access to the domain administration view.
3) The registrar is not secure enough to restrict access to unauthorized access or changes to domain