perform code-style refactoring

- Remove code which is commented out
- Fix whitespace
- Only allow `{` on a single line for function definitions.
refactor complex timeslot-boolean into function.
use c99 stdbool instead of rolling my own.
create and use create/destroy on timeslot/tm

Create create and destroy functions for
checkin-blended tm's and for timeslots.
typedef timeslot/tm types and use them.
add function to retrieve latest assigned db-id

The function allows us to retrieve the latest
assigned id for a row in a given table.
Also db-headers have been added to the common headers.
add database-persistence functions for timeslots

Add functions to persist and save timeslots
to the database. Persist is to store a timeslot
object, and save will actually create the timeslot
object and persist it.

Includes a new now() function, and a today() macro
which maps to now.
use bool and static where appropriate.
define callback-struct for shell

The callback struct consists of a command
identifier, e.g. "start", and a function pointer
to the function which should be called.
switch to timeslots now-mechanic in shell.
add functions to round timeslot/tm to next val.
use round in shell start/stop.
split shell-commands into own files in own dir.
rename calculate_difference

calculate_difference -> timeslot_inner_difference.
add function to calculate timeslot-length in min.
add a function to create a base-tm and use it.
rely on difftime for tm-differences

Remodel the inner-difference function for a timeslot
in order to rely on difftime-mechanic.
Also document timeslot-length.
build binary in bin/ directory.
add function to create timeslot from member-data.
let each CMakeLists.txt define its own libs

These libraries will be assigned a property, which will be read by the
CMakeLists.txt for lib/ and combined towards the libraries for the
binaries.