Changed communication from string to object

Updated the communication between front end and backend to use objects,
making it easier to add attributes in the future
Fixed bug in the front end where multiple links appeared in the same
line
Now detects urls for all data types, if they contain it