Added a preliminary properties system..

I'm still unsure how the full system will be implemented