Refactor to meet modern chef cookbook culture/best practices

The cookbook works basically the same, i just did a lot of linting (rubocop/foodcritic) and added test kitchen support (among other things).

The only breaking change is the default install method is now `source` instead of `package`. If you already override this attribute, you shouldn't be affected.