Docstrings
Contracts interface
Merge pull request #512 from ChrisBeaumont/contracts

Setup PyContracts interface
Fixed UI issue with links changing already displayed components.