add jshint
refactored typed implementation to be useful
Merge pull request #2 from Raynos/new-typed

New typed