Refactoring positions methods; asynchronous updating and many-to-one relationship with users