moment.tz("2016-08-14T22:00:00Z","Europe/Berlin").format("YYYY-MM-DD") // "2016-08-15"
"Europe/Berlin" is a reasonable equivalent of
"W. Europe Standard Time", including its DST rules. If you need a solution that doesn’t hard-code the time zone, then take a look here.
Also understand that the root cause of the problem is that SharePoint is storing the date-only value as if it were a date-time at midnight in the server’s time zone. Therefore, another way to prevent this issue would be to have the server’s time zone set to UTC, and to avoid UTC-to-local conversion on the client. Of course, this could affect other things if change it after data was already written, so be careful if you go down that route.