Isolate integrake file from the rest of the Vim ruby environment

The isolation is not perfect(`require`s and gloabls(`$`) still leak),
but at least functions defined in the integrake file don't get into the
global scope and the helpers are isolated.
Improve error messages
Add data-passing and option-choosing

 - Use `pass_data` to pass data from prerequisite and the subscript
   operator to access it.
 - Use `Integrake.option` to create a task for interactive option
   choosing.
Add hash arguments to `Integrake.option`
Improve option caching deletion

 - For hash options - delete if chosen key no longer present.(was
   already implemented)
 - For list options - delete if chosen option no longer in the list.
Change the coding style to include more whitespace
Add window preparation tasks

Integrake.window will create a task that prepares a window for usage in
other tasks.
Add autocompletion with the complete method for Rake::Task

Also add some prepared autocompletion: :file, :files, :dir and :dirs
Bump minor version