Fix allocated macro, correct bytes measurements in time and timed macros

Before:
```julia
@allocated true
# ERROR: cannot assign variables in other modules
# in #54#f at util.jl:63
@time true  # elapsed time: 1.882e-6 seconds (6888 bytes allocated)
@time true  # elapsed time: 8.94e-7 seconds (48 bytes allocated)
@time true  # still 48, due to the 3 16-byte allocations via time_ns and gc_bytes
```
I'm not sure I'm honoring the description of `@allocated` ("measure bytes allocated without any contamination from compilation"), but I don't remember it doing anything different before.