finish abstract classes and break up files
Rename
Merge pull request #1023 from batmanjs/binding-docs

Binding docs