Zaslat SMS: Three-dimensional Kasteleyn transition: spin ice in a [100] field.