A Well-Founded Semantics for Basic Logic Programs with Arbitrary Abstract Constraint Atoms