diff --git a/app/styles/account/home.sass b/app/styles/account/home.sass
index 1f329ac05..d8aa424cb 100644
--- a/app/styles/account/home.sass
+++ b/app/styles/account/home.sass
@@ -1,5 +1,12 @@
-#user-home-view
-  #avatar
-    width: 150px
+#account-home-view
+  dl
+    margin-bottom: 0px
 
-  content: "blub"
+  img#picture
+    max-width: 50%
+
+  .panel
+    margin-bottom: 10px
+
+  h2
+    margin-bottom: 0px
diff --git a/app/styles/common/top_nav.sass b/app/styles/common/top_nav.sass
index dee79b574..8215c2a2a 100644
--- a/app/styles/common/top_nav.sass
+++ b/app/styles/common/top_nav.sass
@@ -1,4 +1,5 @@
 @import "../bootstrap/variables"
+@import "../bootstrap/mixins"
 
 // This is still very blocky. Browser reflows? Investigate why.
 .open > .dropdown-menu
@@ -34,6 +35,9 @@
     opacity: 1
     top: 100%
 
+a.disabled
+  color: #5b5855
+
 #top-nav
   a.navbar-brand
     padding: 4px 20px 0px 20px
@@ -53,6 +57,7 @@
   .account-settings-image
     width: 18px
     height: 18px
+    margin-right: 5px
 
   .glyphicon-user
     font-size: 16px
@@ -86,19 +91,14 @@
         padding: 15px
         letter-spacing: 1px
         font: 15px 'Helvetica Neue', Helvetica, Arial, sans-serif
-        &:after
-          display: table
-          content: " "
-          clear: both
+        +clearfix()
 
       li.user-dropdown-footer
         padding: 10px
         margin-left: 0px
         font-size: 14px
-        &:after
-          display: table
-          content: " "
-          clear: both
+        +clearfix()
+
         .btn-flat
           border: #ddd 1px solid
           border-radius: 0px
@@ -112,7 +112,7 @@
     &:hover
       color: #f8e413
 
-  .navbar-link-text > a:hover
+  .navbar-link-text > li > a:hover
     background: darken($body-bg, 3%)
 
   .btn, .btn-group, .fancy-select
diff --git a/app/styles/user/home.sass b/app/styles/user/home.sass
index 70b1a9ad6..e69de29bb 100644
--- a/app/styles/user/home.sass
+++ b/app/styles/user/home.sass
@@ -1,5 +0,0 @@
-#account-home-view
-  .main-content-area
-    padding: 20px 20px
-    img#avatar
-      width: 150px
diff --git a/app/templates/account/home.jade b/app/templates/account/home.jade
index a79a1aae5..57ea5799f 100644
--- a/app/templates/account/home.jade
+++ b/app/templates/account/home.jade
@@ -1,8 +1,100 @@
 extends /templates/base
 
 block content
+  .clearfix
+    .col-sm-6.clearfix
+      h2 Account Settings
+      hr
+
+      .panel.panel-default
+        .panel-heading
+          h3.panel-title
+            a(href="account/settings#me") Me
+        .panel-body
+          dl
+            dt Name
+            dd=me.get('name')
+            dt Email
+            dd abe@lincoln
+      .panel.panel-default
+        .panel-heading
+          h3.panel-title
+            a(href="account/settings#picture") Picture
+        .panel-body.text-center
+          img#picture(src="#{me.getPhotoURL(150)}" alt="")
+      .panel.panel-default
+        .panel-heading
+          h3.panel-title
+            a(href="account/settings#wizard") Wizard
+        //.panel-body
+          | Lorem Ipsum
+      .panel.panel-default
+        .panel-heading
+          h3.panel-title
+            a(href="account/settings#emails") Emails
+        .panel-body
+          .form
+            .form-group.checkbox
+              label.control-label(for="email_archmageNews")
+                span General
+              input#email_archmageNews(name="email_archmageNews", type="checkbox", checked=subs.generalNews, disabled="true")
+            .form-group.checkbox
+              label.control-label(for="email_archmageNews")
+                span.spr(data-i18n="classes.archmage_title")
+                  | Archmage
+                span(data-i18n="classes.archmage_title_description")
+                  | (Coder)
+              input#email_archmageNews(name="email_archmageNews", type="checkbox", checked=subs.archmageNews, disabled="true")
+            .form-group.checkbox
+              label.control-label(for="email_artisanNews")
+                span.spr(data-i18n="classes.artisan_title")
+                  | Artisan
+                span(data-i18n="classes.artisan_title_description")
+                  | (Level Builder)
+              input#email_artisanNews(name="email_artisanNews", type="checkbox", checked=subs.artisanNews, disabled="true")
+            .form-group.checkbox
+              label.control-label(for="email_adventurerNews")
+                span.spr(data-i18n="classes.adventurer_title")
+                  | Adventurer
+                span(data-i18n="classes.adventurer_title_description")
+                  | (Level Playtester)
+              input#email_adventurerNews(name="email_adventurerNews", type="checkbox", checked=subs.adventurerNews, disabled="true")
+            .form-group.checkbox
+              label.control-label(for="email_scribeNews")
+                span.spr(data-i18n="classes.scribe_title")
+                  | Scribe
+                span(data-i18n="classes.scribe_title_description")
+                  | (Article Editor)
+              input#email_scribeNews(name="email_scribeNews", type="checkbox", checked=subs.scribeNews, disabled="true")
+            .form-group.checkbox
+              label.control-label(for="email_diplomatNews")
+                span.spr(data-i18n="classes.diplomat_title")
+                  | Diplomat
+                span(data-i18n="classes.diplomat_title_description")
+                  | (Translator)
+              input#email_diplomatNews(name="email_diplomatNews", type="checkbox", checked=subs.diplomatNews, disabled="true")
+            .form-group.checkbox
+              label.control-label(for="email_ambassadorNews")
+                span.spr(data-i18n="classes.ambassador_title")
+                  | Ambassador
+                span(data-i18n="classes.ambassador_title_description")
+                  | (Support)
+              input#email_ambassadorNews(name="email_ambassadorNews", type="checkbox", checked=subs.ambassadorNews, disabled="true")
+
+      .panel.panel-default
+        .panel-heading
+          h3.panel-title
+            a(href="account/settings#password") Password
+      .panel.panel-default
+        .panel-heading
+          h3.panel-title
+            a(href="account/settings#job-profile") Job Profile
+    .col-sm-6
+      h2 Recently Played
+      hr
+
+//block content
   h2 Account
-  div
   .col-sm-3.text-center
     img#avatar(src="#{me.getPhotoURL(100)}")
     h3=me.get('name') || 'Anoner'
@@ -10,11 +102,22 @@ block content
     dl.dl-horizontal
       if me.get('firstName') || me.get('lastName')
         dt Full name
-        dd=me.get('firstName') + ' ' + me.get('lastName')
+        dd=me.get('firstName') || '' + ' ' + me.get('lastName') || ''
       dt Email
       dd
         span.spr=me.get('email')
-        span (subscriptions)
+        //span (subscriptions)
+      hr
+      - var dateCreated = me.get('dateCreated');
+      - var signedCLA = me.get('signedCLA');
+      - console.log(moment)
+      dt Member since
+      dd= moment(dateCreated).format('MMMM Do YYYY')
+      if signedCLA
+        dt Signed CLA
+        dd= moment(signedCLA).format('MMMM Do YYYY')
+
+      // TODO Have social network icons here for easy linking
 
   .col-sm-3
     h3 Account
@@ -33,3 +136,5 @@ block content
         a Statistics
       li
         a Code
+
+
diff --git a/app/templates/base.jade b/app/templates/base.jade
index f8c7dff31..06482a750 100644
--- a/app/templates/base.jade
+++ b/app/templates/base.jade
@@ -35,12 +35,6 @@ body
             else
               span.glyphicon.glyphicon-user
 
-        //else
-          button.btn.btn-primary.navbuttontext.header-font.auth-button
-            span(data-i18n="login.log_in") Log In
-            span.spr.spl /
-            span(data-i18n="login.sign_up") Create Account
-
         ul(class='navbar-link-text').nav.navbar-nav.pull-right
           li.play
             a.header-font(href='/play', data-i18n="nav.play") Levels
@@ -53,7 +47,7 @@ body
                   img.account-settings-image(src=me.getPhotoURL(18), alt="")
                 else
                   i.glyphicon.glyphicon-user
-                .navbuttontext-account(data-i18n="nav.account") Account
+                .navbuttontext-account(data-i18n="nav.account" href="/account") Account
                 span.caret
               ul.dropdown-menu(role="menu")
                 li.user-dropdown-header
@@ -65,12 +59,18 @@ body
                   .col-xs-4.text-center
                     a(href="#") Stats
                   .col-xs-4.text-center
-                    a.disabled(href="#") Code
+                    a.disabled() Code
                 li.user-dropdown-footer
                   .pull-left
-                    a.btn.btn-default.btn-flat(href="") Account
+                    a.btn.btn-default.btn-flat(href="/account") Account
                   .pull-right
-                    a.btn.btn-default.btn-flat(href="") Log Out
+                    button#logout-button.btn.btn-default.btn-flat(data-i18n="login.log_out") Log Out
+          else
+            li
+              button.btn.btn-primary.navbuttontext.header-font.auth-button
+                span(data-i18n="login.log_in") Log In
+                span.spr.spl /
+                span(data-i18n="login.sign_up") Create Account
 
   block outer_content
     #outer-content-wrapper
diff --git a/app/views/account/home.coffee b/app/views/account/home.coffee
index bf96c50d5..91368c9bf 100644
--- a/app/views/account/home.coffee
+++ b/app/views/account/home.coffee
@@ -12,6 +12,12 @@ module.exports = class AccountHomeView extends View
     super options
     return unless me
 
+  getRenderData: ->
+    c = super()
+    c.subs = {}
+    c.subs[sub] = 1 for sub in c.me.getEnabledEmails()
+    c
+
   afterRender: ->
     super()
     @openModelView new AuthModalView if me.isAnonymous()
diff --git a/server/levels/sessions/LevelSession.coffee b/server/levels/sessions/LevelSession.coffee
index 228d0b1e8..6a3f17b45 100644
--- a/server/levels/sessions/LevelSession.coffee
+++ b/server/levels/sessions/LevelSession.coffee
@@ -42,4 +42,6 @@ LevelSessionSchema.pre 'save', (next) ->
   delete previous[id] if initd
   next()
 
+LevelSessionSchema.index {user: 1, changed: -1}, {sparse: true, name: 'last played index'}
+
 module.exports = LevelSession = mongoose.model('level.session', LevelSessionSchema, 'level.sessions')