I've got your basic_example code to work with python 3. I basically just cloned the repository to my pi and ran basic_example under python 3 IDLE with the uArm connected over USB. Only one small snag, the code is for python 2 (though with python 3 compliant print statements!). If anyone else gets stuck, python 3 changed the way bytes were handled so now you need to change all the:
line = str(self.ser.readline())
code to read something like:
line = str(self.ser.readline().strip().decode('ascii'))
bytes(cmnd + "\n")
line to read:
bytes(cmnd + "\n", "ascii")
Then it should work. I'm not sure if this change is backward compatible with python2 or not so I haven't made any attempt to push it to the online repository. If I have my git terminology right there.