Support lambda-based default values for params

The test gives an example of what we're looking for here:

```ruby
params do
  optional :random, default: -> { Random.rand }
  optional :not_random, default: Random.rand
end
get '/numbers' do
  { random_number: params[:random], non_random_number: params[:non_random_number] }
end
```