https://github.com/hyperandroid/CAAT
If it wasn't for that I would have never been able to stitch together a project as difficult as this.