refs #828 Rename toSubclass() to as(), shorter and more consistent with
similar mechanisms (ie: boost)