make width type stable, and all kwargs typed
Merge pull request #3 from tonyhffong/master

make width type stable, and all kwargs typed