Support tool slugs as route params

A slug will now be generated from the tool name, which can be changed by
the user. The tool slug is used as the tools route param.