now works better with jquery event handlers, transitions prettily, updates url as needed