Fix form elements

Related to #111, which is still present.

All the form elements can potentially escalate to an infinite recursion because `getValueOptions()` is invoked by `getValueOptionsValue()`, which will be called by `setValueOptions()` if a validator is present, which in turn will be called by `getValueOptions()` itself if no options are returned from `Proxy`.

Also a minor fix to `Proxy` now better handles the usage of custom repositories and find methods, preventing unpredictable behaviour with invalid return types.