Validates controller methods exist when specified

It was possible to specify an invalid controller method in a router.
This will not cause an error until runtime. This change catches the
error much earlier in the application lifecycle. In fact with this
change errors should not be able to pass unit tests even if there is
no specific test for the behavior.

Related-bug: #1377304
Change-Id: Icc5646c143a234127a8b4ac8a74342ef3dca7e80
Merge "Validates controller methods exist when specified" into proposed/juno