Fixed DataPoint object

Now supports a null constructor and accepts magnitude as a double
instead of a string.