Attendance API - Added support for open-ended attendances

Changed 'end_time' in POST and PATCH endpoints to be optional

High-Level Description
Previously, the only option for employees to save their working time in real-time was using the web application of Personio.

With this change we now also allow all users of our public API to send open-ended attendances, enabling real-time tracking directly to Personio.

Technical Description
The end_time field in the POST and PATCH requests for Attendance is now optional. We've updated the validation to reflect this change, ensuring null or missing end_time values are handled appropriately.

We now support the creation of attendances:

with end_time value (for example 08:00)

with end_time being 'null'

without end_time value

And support the update of attendances (from → to):

open-ended → open-ended

not open-ended → open-ended

open-ended → not open-ended

not open-ended → not open-ended