Implement a better way to name and export class constructors.

This change also simplified the way classes are exported to PaperScope objects.
Restructure Base.define() / Base.describe() code for easier future removal of legacy support.
Synchronize with latest version on straps.js repo.
Merge git://github.com/paperjs/paper.js