Fix for 12837: Duration's get and individual unit getters are bug-prone.

Experience has shown that most people (at least some of who don't read
the documentation) seem to expect that get and the indivdual getters
return what total returns, causing bugs. So, this commit deprecates
Duration.get and all of the individual unit getters (including
Duration.fracSec).

split has been added in their stead. It takes a list of time unit
strings and splits the Duration into those units either assigning them
to the provided pointers to integers or by returning a struct with the
values for the units as its members.

It's likely that most code that will have to change because of these
changes is broken anyway, so this will catch bugs.
Typo: and reserved > are reserved
Merge pull request #833 from GeorgeSapkin/patch-1

Typo: and reserved > are reserved
Add attributes to core.time.abs.
Changed code coverage so that all lines line up in the lst file.
make TickDuration.currSystemTick nothrow

- The used functions only fail on invalid input,
  so any error is an implementation issue and assert
  should be used instead of throwing an exception.
Merge pull request #836 from jmdavis/abs

Add attributes to core.time.abs.
Merge pull request #834 from MartinNowak/currSystemTick_nothrow

make TickDuration.currSystemTick nothrow
Merge pull request #830 from economicmodeling/issue_4153

Issue 4153 Changed code coverage so that all lines line up in the lst file.
Merge pull request #825 from jmdavis/time

Fix for 12837: Duration's get and individual unit getters are bug-prone.