cells: Improve pinboard

- Changes the time format to use the local time format (rather than
  hard-coding a 12 hour format with no indication wheter it is am or pm).

- Uses a circular buffer rather than an array to keep the log - removing
  the oldest entry from an array is rather expensive as the entire array
  has to be copied. This change reduce the CPU overhead of the pinboard.
  This also reduces a potential contention point between threads of a cell
  all writing to the pinboard.

- Reduces the memory foot print and CPU overhead of creating a
  pinboard entry (static inner and no Date instance stored in a field).

Target: trunk
Require-notes: yes
Require-book: yes
Request: 2.10
Acked-by: Paul Millar <paul.millar@desy.de>
Acked-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
Patch: https://rb.dcache.org/r/7220/
(cherry picked from commit 00d25349d08cc24671be69d8e42b90ed7893ad1b)