Fixed bug caching templates that don't exist

If you try to use lazybones with a template that doesn't exist
in the cache or bintray, it creates a 0 byte file in the cache.
I added some exception handling and an error message back to the
user to handle this.
Added a cache templates gradle task.

Copies packaged templates into ~/.groovy/lazybones to remove
the publishing step when you're just working locally.
Changing cache directory to ~/.lazybones/templates
Merge https://github.com/kyleboon/lazybones into kyleboon
Rename main class in build file.

This should have been done as part of the LazyBonesMain -> LazybonesMain change
but was missed.
Add extra error-handling to create command.
Add integration tests to cover error handling in 'create'.
Make minor style changes.
Fix filenames for LazyBones -> Lazybones change.