Added names to regular expressions

Each regular expression group now has names so that they can be referred to directly instead of by an index

```python
level = log_line.group('level')                 # this
level, tag, owner, message = log_line.groups()  # instead of this
```