Refactor

Ok, this PR might be a little over the top, but I started playing with it and ended up with this. It's still not finished, I need to add more tests for Extension and especially Route, do some more prettying, clean up, and stuff like that. But I want to hear your opinions.

#### Summary of changes

- Extension renamed to DI\Extension.
- Route renamed to Application\Route.
- Macros renamed to Latte\Macros.
- Added Application\Response, handles actual sending.
- Added Rule, encapsulates validation rules.
- Added Helpers, for some misc functions.
- Cleaned code, added annotations where necessary.
- Config is validated in Extension.
- Routes are prepended to the router. (thanks @Kdyby)
- Parameter "algorithm" renamed to "flags", to be consistent with Nette\Utils\Image.
- PHP compatibility extended backwards down to PHP 5.3.3.
- Added tests for everything I could think of.
- Moved some stuff aroud. A lot.
- Travis CI ready.