update client info upon contact, client list and admin client list

Added in order to support web-UI.
@ben-jones, can you please review this?
We may want to do fuzzing on the last seen time here. For example, you could just return the day they were last seen instead of the exact time. 

More aggressively, you could check if we have seen the client in the last x days and if so, then you set a boolean named "active" to true, otherwise, you set it to false. This is what we do for BISmark, so it should be fine to do here.

Let me know what you think.