Default functional implementations
Extra coercion fixes and tests