Using navigator.geolocation.getCurrentPosition to set up Google Maps
Basic example of setting up a template system with handlebars.js
One of the challenges might be dynamically loading jQuery using no library loaders. Here's a simplistic solution.
When initializing a typeahead using the typeahead.js jQuery plugin, you pass the plugin method one or more datasets. The source of a dataset is responsible for computing a set of suggestions for a given query.