Agent-Oriented Programming for Client-Side Concurrent Web 2.0 Applications