Initial commit with basic feature set. 100% tested but no doc no setup.py.