solves #2 (closed) #3 (closed) #12 (closed) #4 (closed) #6 (closed)
assigned to @brilator
mentioned in commit d683097f
merged