Add default constructor to timestamp and precision

C++11 specifies a type "is_trivially_copyable" that must be met for
memcpy to work over a struct. Defined a default constructor still
meets those reqirements, but libstdc++ has yet to implement the
type trait that verifies this. Leave commented for now.
Add proper fractional support to the timestamps.

Not officially tested, but fractional timestamps should be computed
correctly.
Adding packet class to handle NTP packet reading and writing

The packet class is the buffer for the NTP server, and automatically
updates the values of the packet upon request. A few of the flags still
need to be set, and some unittests would be nice. Tested with netcat &
wireshark to generate correct values.