check argument type for all `@:impl` functions in case the metadata was manually added
check presence of `@:impl` for all abstract instance field access
make sure abstract property/accessor combinations are sane
add a test for #3616
add property test for invalid abstract access
oops