reflection: refactored reflection & added annotation parser [closes #56]