Added tests; Re-worked general helpers
Removed Attrs record type

Removed Attrs record type; still can't decide on what to name some
functions
Adding broke declare-decorator

Adding broke declare-decorator so I can work on it somewhere else
tomorrow