added service method for getting a new sheet

This is different from just instantiating a new sheet in that it will
set some default properties, which we are keeping decoupled from the
underlying model.
implementing IDataErrorInfo on base models
getting validation highlighting mostly working

image width and image height still throw nonstandard errors due to some
WPF weirdness
adding custom converter for better int conversion
added workaround for blank ints (close #5)