Reasoning and Planning with Sensing Actions, Incomplete Information, and Static Causal Laws using Answer Set Programming