Pergunta de entrevista da empresa MobileIron

Implement ReadWriteLock from scratch code to handle all the usecases