add a test with three objects
always pass a list to build_named_route_call
remove extract_record since we have extracted the list
stop popping in build_named_route_call
record as a hash is not possible, so rm branch
we always convert this variable to a list, so we can remove the unconversion
only do the Array is_a check once
skip another Array is_a check
pull nil checks up
push all is_a tests up, always pass options to the named route
pulling helpermethods up before refactoring
small refactoring
simplified route method name generation
remove unnecessary array allocations
only pop records when we get an array
remove should_pop variable
add a test for the parameters sent to the url helper for new records
only send options if there are any options
only test `persisted?` on the record once

also avoid the case of calling `persisted?` on something that doesn't
respond to it
remove dead code