Added `typeOf` method
Added test for `typeOf` method
Added docs for `typeOf` method
Used `typeOf` for `is*` methods