Comments updated, formatting improved.