Use a "via" __self__ property instead of a calculated property.

The calculated property implementation was returning the old value when
running updates.  Rather than fix it, just stop using it altogether.
Merge pull request #87 from tmooney/simplify_sample_type

Replace calculated "sample_type" property with an alias