Fixed empty Slice comparison bug and added ability to do "if (slice == null)" or "if (slice!= null)"

- Added overloads to ==, !=, .. that take Slice? arguments
- Fixed bug where Slice.Empty == Slice.Nil was returning true
- Added unit tests