Make minimize and restore animated

With the allows transparency change this should be possible now.
This works by setting WindowStyle to SingleBorderlessWindow during minimize and restore operations. This method is pretty hacky, so it probably needs to be rigorously checked for breaks.