Single-Page Web App Development, Part 1: Setting the Stage