Added defense code to CompareTo and modified the Constructor

1. Constructor will throw an ArgumentNullException if the value is null.
2. Added defense code to CompareTo if the other is null.