Refactor into Tilt::Mapping:

- Allow multiple mappings with Tilt::Mapping
- Replace global state with a Tilt::Mapping-instance
- Implement lazy loading (#160, #178)
- Remove initialize_template_engine and engine_initialized?
Add basic Mapping tests
Remove template engines from development dependency:

We're using Bundler for managing dependencies now.
Add MiniTest as dependency
Clean up Rakefile:

Use only Bundler for dependencies
Swicth to MiniTest
Improve Tilt::Mapping test coverage
Fix Kramdown tests
Add metadata tests
ERB/Erubis: Better warning
TestMapping: Move remove_const to teardown
Warn on autoloading in multithread env
Mapping: Don't `require` when a template class is defined:

This means that the previous Tilt.prefer(Tilt::RDocTemplate) is now
just: `require 'tilt/rdoc'`.
Merge branch 'master' into lazy-require

Conflicts:
	lib/tilt.rb
	lib/tilt/template.rb
Revert "Allow ambles to return Arrays (fixes #193)"

This reverts commit 59a3b7770ccb8531ad1b4796285e27fabe6d4b5e.

Conflicts:
	lib/tilt/template.rb
	test/tilt_template_test.rb
Add #templates_for #121