- removed goto, it's evil
- changed the PROPERTY macro to a simper version and brought some refactoring with it
- now uses a variadic template formatter instead of a macro