Add support for %w and %W (words) sigils with return type modifiers

As discussed previously in #501, %w can now return a few core data types other than just binaries (extendible to support further types in the future without breaking backwards compatibility). My enthusiasm for this jumped ten-fold now that I'm writing things that could be written like this:

```elixir
fields %w(
  contact_id
  contact_guid
  brand_id
  title
  first_name
  middle_name
  last_name
  suffix
  eligibility_mask
  username
  user_password
  dob
  gender
  passport_country
  password_number
)a
```