clarify 'sg' and 'smp'
- 'sg' gives the false impression that history and trans tables are protected
by locking, which is not true. in face, it has absolutly nothing to do with
history and TT. it's essentially a lock to prevent interleaved std::cout
writes. so calling it 'ui' (user interface) makes more sense.
- 'smp' is defined as an empty class, which derives from class Lockable, which
itself is nothing more than a mutex wrapper. again, it's just a mutex, so
define it as a mutex and make the purpose clear. the lock is held during split
operations.

Also remove class Lockable, because it is useless (use std::mutex instead).
commit bc42b5a3100ce4c6e0d01a212a116a0aa86c9507
Author: Lucas Braesch <lucas.braesch@gmail.com>
Date:   Fri Mar 28 11:50:29 2014 +0800

    stop info currmove spamming