Many changes

* 100% test coverage (getting less than 100% test coverage is my pet peeve lol)
* Removed code branches that would never be reached
* Fix objectPath.del
* Created more tests using arrays directly along with string paths
* Bumped version to 0.3.0 because the behavior of `objectPath.del` changed
* Added `defaultValue` for `objectPath.get(obj, 'some.path', false)` (fallback value)

Sorry for doing it all in one big commit, should have split each modification in a branch.