added keyboard nav (a rough cut)