reduce allocations and change some String process methods for asset_path helper

~ 20% performance up

benchmark: https://gist.github.com/huacnlee/96374e46bb35c7351878

```
## Before
 
Total allocated 13
Total retained 0
 
## After
 
Total allocated 4
Total retained 1
 
## Benchmark
 
Calculating -------------------------------------
   asset_path before      9196 i/100ms
    asset_path after     10588 i/100ms
-------------------------------------------------
   asset_path before   112359.4 (±5.7%) i/s -     560956 in   5.008435s
    asset_path after   134550.6 (±6.0%) i/s -     677632 in   5.054601s
 
Comparison:
    asset_path after:   134550.6 i/s
   asset_path before:   112359.4 i/s - 1.20x slower
```