performance in jid : replace __getattr__ et __setattr__ by @property and @xxx.setter

this implementatian is much more verbose but faster, especilally if you are dealing a lot with JIDs
on my box, ./testall.py now takes 45s. It takes 53s in the old implementation (about 15% faster)
Merge pull request #251 from jpcaruana/jid_performance