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 like this:

```elixir
fields [
  :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
]
```