Implemented WatchService

I have tried to implement the WatchService as best per my knowledge. Let me know if there need any modifications or if it's not even able to be merged :jack_o_lantern: