Remove unecessary import, define all plugs before user code
Rely on Plug route builder

This change is backwards incompatible since Plug treats *paths
as a list of segments instead of a string.
Use new Route struct to avoid recalculating data
Optimize named helpers

Instead of interpolating the values at runtime, we use the
segments list to build a list at compilation time. We can
optimize it even further in future commits by generating
the whole binary at compile time.
Clean up and speed up route tests
Optimize segments when generating helpers
Remove ResourcesContext as we can use scope directly
Define routes inline so we get proper stacktrace
Generate helpers automatically into a single module
Move resource functionality to the Resource module
Require Elixir v1.0.0
Consolidate URL during compilation
Shuffle code to adapter file
Merge mapper into router and document routing behaviour
Merge pull request #329 from phoenixframework/jv-plug-router

Refactor router