Fix anonymous user exception on training page
Fix anonymous user exception on training page

connects to #1589 on github

As discussed in person, this is the result of some code assuming an
anonymous user is a logged in user. This commit forces realization
of the user and returns None for the id. The solutions was inspired by
this stackoverflow page:
http://stackoverflow.com/questions/17623234/django-simplelazyobject

This is in response to a bug that turned up on production. Fortunately
the only time this bug would turn up is with a case in which a 404
appropriate. This fix makes sure that a 404 is returned.

maurizi/nyc-trees,kdeloach/nyc-trees,azavea/nyc-trees,kdeloach/nyc-trees,azavea/nyc-trees,maurizi/nyc-trees,kdeloach/nyc-trees,maurizi/nyc-trees,azavea/nyc-trees,kdeloach/nyc-trees,maurizi/nyc-trees,azavea/nyc-trees,azavea/nyc-trees,kdeloach/nyc-trees