Refactored class lti to use @properties and setters
This way the setters update the rest of the properties accordingly,
as suggested by Ralf Gommers.
Added _update method to class lti to refactor repeated code
Typo: removed repeated docstring
Simplified _update signature
Merge pull request #2655 from Juanlu001/lti-attrs

Refactor of lti class to use @property and setters